Code Monkey home page Code Monkey logo

devopsmetrics's People

Contributors

chrishanna avatar dependabot-preview[bot] avatar dependabot[bot] avatar samsmithnz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

devopsmetrics's Issues

Daily DevOps - 28-Jul-2020, 9:55:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0.5333
Deployments times per week 3.7331

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status
482 01-Jul-2020, 2:17:57 am 01-Jul-2020, 2:27:20 am 9:23 completed
484 02-Jul-2020, 12:49:34 pm 02-Jul-2020, 12:58:29 pm 8:55 completed
487 03-Jul-2020, 10:49:13 am 03-Jul-2020, 10:58:05 am 8:52 completed
499 06-Jul-2020, 12:20:09 pm 06-Jul-2020, 12:29:17 pm 9:08 completed
501 14-Jul-2020, 12:04:34 pm 14-Jul-2020, 12:13:56 pm 9:22 completed
504 15-Jul-2020, 4:41:40 pm 15-Jul-2020, 4:52:02 pm 10:22 completed
506 15-Jul-2020, 6:34:25 pm 15-Jul-2020, 6:43:40 pm 9:15 completed
517 19-Jul-2020, 9:33:56 pm 19-Jul-2020, 9:47:26 pm 13:30 completed
519 25-Jul-2020, 3:48:14 pm 25-Jul-2020, 4:02:56 pm 14:42 completed
521 25-Jul-2020, 7:48:38 pm 25-Jul-2020, 8:02:55 pm 14:17 completed
525 27-Jul-2020, 6:54:08 pm 27-Jul-2020, 7:07:59 pm 13:51 completed
530 27-Jul-2020, 8:03:33 pm 27-Jul-2020, 8:19:12 pm 15:39 completed
534 28-Jul-2020, 2:10:00 pm 28-Jul-2020, 2:25:36 pm 15:36 completed
536 28-Jul-2020, 2:44:37 pm 28-Jul-2020, 2:59:14 pm 14:37 completed
541 28-Jul-2020, 4:01:00 pm 28-Jul-2020, 4:20:02 pm 19:02 completed
542 28-Jul-2020, 4:01:51 pm 28-Jul-2020, 4:13:29 pm 11:38 completed

Create Azure DevOps widget

  • Create new marketplace publisher and destination
  • Create hello world app
  • Package hello world app
  • Publish hello world app
  • Use CI to package package
  • Use CD to publish package
  • Implement deployment frequency

Prepare for hackathon

  • Add ARM template
  • Add slots to web app
  • Add functional testing via Selenium to test the staging slot before it swaps
  • Add code reviews to branch policies
  • Create architecture diagram

Add a database to cache data and remove worst case scenario (everytime!)

  • Many of the build pipelines remove builds after a certain number of builds or days, especially Pull Request/feature branches

By caching the data, I'll have a longer list of data to build a real picture.

  • Add builds, pull requests and pull request commits to an Azure Storage table
  • Create a process to update these tables regularly (hourly? daily?)
  • Move the criteria into a settings table
  • Final integration testing

Daily DevOps - 28-Jul-2020, 9:51:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0.5333
Deployments times per week 3.7331

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status
482 01-Jul-2020, 2:17:57 am 01-Jul-2020, 2:27:20 am 9:23 completed
484 02-Jul-2020, 12:49:34 pm 02-Jul-2020, 12:58:29 pm 8:55 completed
487 03-Jul-2020, 10:49:13 am 03-Jul-2020, 10:58:05 am 8:52 completed
499 06-Jul-2020, 12:20:09 pm 06-Jul-2020, 12:29:17 pm 9:08 completed
501 14-Jul-2020, 12:04:34 pm 14-Jul-2020, 12:13:56 pm 9:22 completed
504 15-Jul-2020, 4:41:40 pm 15-Jul-2020, 4:52:02 pm 10:22 completed
506 15-Jul-2020, 6:34:25 pm 15-Jul-2020, 6:43:40 pm 9:15 completed
517 19-Jul-2020, 9:33:56 pm 19-Jul-2020, 9:47:26 pm 13:30 completed
519 25-Jul-2020, 3:48:14 pm 25-Jul-2020, 4:02:56 pm 14:42 completed
521 25-Jul-2020, 7:48:38 pm 25-Jul-2020, 8:02:55 pm 14:17 completed
525 27-Jul-2020, 6:54:08 pm 27-Jul-2020, 7:07:59 pm 13:51 completed
530 27-Jul-2020, 8:03:33 pm 27-Jul-2020, 8:19:12 pm 15:39 completed
534 28-Jul-2020, 2:10:00 pm 28-Jul-2020, 2:25:36 pm 15:36 completed
536 28-Jul-2020, 2:44:37 pm 28-Jul-2020, 2:59:14 pm 14:37 completed
541 28-Jul-2020, 4:01:00 pm 28-Jul-2020, 4:20:02 pm 19:02 completed
542 28-Jul-2020, 4:01:51 pm 28-Jul-2020, 4:13:29 pm 11:38 completed

Daily DevOps - 29-Jul-2020, 12:02:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0
Deployments times per month 0

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status

Daily DevOps - 28-Jul-2020, 9:54:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0.5333
Deployments times per week 3.7331

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status
482 01-Jul-2020, 2:17:57 am 01-Jul-2020, 2:27:20 am 9:23 completed
484 02-Jul-2020, 12:49:34 pm 02-Jul-2020, 12:58:29 pm 8:55 completed
487 03-Jul-2020, 10:49:13 am 03-Jul-2020, 10:58:05 am 8:52 completed
499 06-Jul-2020, 12:20:09 pm 06-Jul-2020, 12:29:17 pm 9:08 completed
501 14-Jul-2020, 12:04:34 pm 14-Jul-2020, 12:13:56 pm 9:22 completed
504 15-Jul-2020, 4:41:40 pm 15-Jul-2020, 4:52:02 pm 10:22 completed
506 15-Jul-2020, 6:34:25 pm 15-Jul-2020, 6:43:40 pm 9:15 completed
517 19-Jul-2020, 9:33:56 pm 19-Jul-2020, 9:47:26 pm 13:30 completed
519 25-Jul-2020, 3:48:14 pm 25-Jul-2020, 4:02:56 pm 14:42 completed
521 25-Jul-2020, 7:48:38 pm 25-Jul-2020, 8:02:55 pm 14:17 completed
525 27-Jul-2020, 6:54:08 pm 27-Jul-2020, 7:07:59 pm 13:51 completed
530 27-Jul-2020, 8:03:33 pm 27-Jul-2020, 8:19:12 pm 15:39 completed
534 28-Jul-2020, 2:10:00 pm 28-Jul-2020, 2:25:36 pm 15:36 completed
536 28-Jul-2020, 2:44:37 pm 28-Jul-2020, 2:59:14 pm 14:37 completed
541 28-Jul-2020, 4:01:00 pm 28-Jul-2020, 4:20:02 pm 19:02 completed
542 28-Jul-2020, 4:01:51 pm 28-Jul-2020, 4:13:29 pm 11:38 completed

Create Probot automation

Probot needs to do

  • Create prototype Probot
  • Run periodically
  • Run the API to get data
  • Process the data and create a static image from the binary stream
  • Fix the settings
    Stretch goals:
  • stretch goal: Post the badges for all 4 metrics
  • stretch goal: Post the badges into readme.md file
  • stretch goal: Can we post as the bot instead of the owner

Daily DevOps - 28-Jul-2020, 9:52:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0.5333
Deployments times per week 3.7331

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status
482 01-Jul-2020, 2:17:57 am 01-Jul-2020, 2:27:20 am 9:23 completed
484 02-Jul-2020, 12:49:34 pm 02-Jul-2020, 12:58:29 pm 8:55 completed
487 03-Jul-2020, 10:49:13 am 03-Jul-2020, 10:58:05 am 8:52 completed
499 06-Jul-2020, 12:20:09 pm 06-Jul-2020, 12:29:17 pm 9:08 completed
501 14-Jul-2020, 12:04:34 pm 14-Jul-2020, 12:13:56 pm 9:22 completed
504 15-Jul-2020, 4:41:40 pm 15-Jul-2020, 4:52:02 pm 10:22 completed
506 15-Jul-2020, 6:34:25 pm 15-Jul-2020, 6:43:40 pm 9:15 completed
517 19-Jul-2020, 9:33:56 pm 19-Jul-2020, 9:47:26 pm 13:30 completed
519 25-Jul-2020, 3:48:14 pm 25-Jul-2020, 4:02:56 pm 14:42 completed
521 25-Jul-2020, 7:48:38 pm 25-Jul-2020, 8:02:55 pm 14:17 completed
525 27-Jul-2020, 6:54:08 pm 27-Jul-2020, 7:07:59 pm 13:51 completed
530 27-Jul-2020, 8:03:33 pm 27-Jul-2020, 8:19:12 pm 15:39 completed
534 28-Jul-2020, 2:10:00 pm 28-Jul-2020, 2:25:36 pm 15:36 completed
536 28-Jul-2020, 2:44:37 pm 28-Jul-2020, 2:59:14 pm 14:37 completed
541 28-Jul-2020, 4:01:00 pm 28-Jul-2020, 4:20:02 pm 19:02 completed
542 28-Jul-2020, 4:01:51 pm 28-Jul-2020, 4:13:29 pm 11:38 completed

Daily DevOps - 29-Jul-2020, 12:01:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0
Deployments times per month 0

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status

Refactor secrets into Key Vault

While all secrets in the POC are managed with User Secrets and injecting secrets into the web app on deployment, there could be some benefit to refactoring PAT Token and Client Secrets into a key vault.

Daily DevOps - 29-Jul-2020, 11:57:56 am

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0
Deployments times per month 0

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status

Daily DevOps - 29-Jul-2020, 11:59:56 am

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0
Deployments times per month 0

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status

How will other users consume this?

From a scale perspective, this is just one table storage container, can it handle 10, 100, 1000 users? We certainly don't want to be managing other users data.

Therefore, from a data perspective, users need confidence that their data is protected - hence, the current solution with a central azure data store is not ideal. There should be some way for users to easily configure and deploy this to their own tenants.

Daily DevOps - 28-Jul-2020, 9:53:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0.5333
Deployments times per week 3.7331

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status
482 01-Jul-2020, 2:17:57 am 01-Jul-2020, 2:27:20 am 9:23 completed
484 02-Jul-2020, 12:49:34 pm 02-Jul-2020, 12:58:29 pm 8:55 completed
487 03-Jul-2020, 10:49:13 am 03-Jul-2020, 10:58:05 am 8:52 completed
499 06-Jul-2020, 12:20:09 pm 06-Jul-2020, 12:29:17 pm 9:08 completed
501 14-Jul-2020, 12:04:34 pm 14-Jul-2020, 12:13:56 pm 9:22 completed
504 15-Jul-2020, 4:41:40 pm 15-Jul-2020, 4:52:02 pm 10:22 completed
506 15-Jul-2020, 6:34:25 pm 15-Jul-2020, 6:43:40 pm 9:15 completed
517 19-Jul-2020, 9:33:56 pm 19-Jul-2020, 9:47:26 pm 13:30 completed
519 25-Jul-2020, 3:48:14 pm 25-Jul-2020, 4:02:56 pm 14:42 completed
521 25-Jul-2020, 7:48:38 pm 25-Jul-2020, 8:02:55 pm 14:17 completed
525 27-Jul-2020, 6:54:08 pm 27-Jul-2020, 7:07:59 pm 13:51 completed
530 27-Jul-2020, 8:03:33 pm 27-Jul-2020, 8:19:12 pm 15:39 completed
534 28-Jul-2020, 2:10:00 pm 28-Jul-2020, 2:25:36 pm 15:36 completed
536 28-Jul-2020, 2:44:37 pm 28-Jul-2020, 2:59:14 pm 14:37 completed
541 28-Jul-2020, 4:01:00 pm 28-Jul-2020, 4:20:02 pm 19:02 completed
542 28-Jul-2020, 4:01:51 pm 28-Jul-2020, 4:13:29 pm 11:38 completed

Daily DevOps - 29-Jul-2020, 12:00:33 pm

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0
Deployments times per month 0

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status

Daily DevOps - 29-Jul-2020, 11:58:56 am

Daily DevOps Metrics


Days Included In Metrics : 30

Devops Badge

Metric Value
Deployments Per Day Metric 0
Deployments times per month 0

Build History

buildNumber startTime endTime buildDurationInMinutesAndSeconds status

Move PAT Tokens into a secure location and stop passing them as query parameters

Couple options here:

  • Put the pat tokens into a key vault

  • Use database/settings table with key to identify it
    exchange with a code that extracts the PAT token from the settings table (and therefore isn't passed around like candy).

  • Basic Authentication:
    Advantages:

    • PAT tokens and Client Secrets are visible in the URL

    Disadvantages:

    • Basic authentication is still user visible in requests. This is better, but not the best.
  • Other...?

Create GitHub widget

Should it be a GitHub app or oAuth app?

  • Make decision on GitHub app or oAuth app? (GitHub App)

https://docs.github.com/en/developers/apps/about-apps
https://docs.github.com/en/developers/apps/differences-between-github-apps-and-oauth-apps

  • GitHub apps run as the user who authorized them. GitHub Apps run as themselves.
GitHub Apps OAuth Apps
You must be an organization owner or have admin permissions in a repository to install a GitHub App on an organization. If a GitHub App is installed in a repository and requires organization permissions, the organization owner must approve the application. You can authorize an OAuth app to have access to resources.
You can install a GitHub App on your personal repository. You can authorize an OAuth app to have access to resources.
You must be an organization owner, personal repository owner, or have admin permissions in a repository to uninstall a GitHub App and remove its access. You can delete an OAuth access token to remove access.
You must be an organization owner or have admin permissions in a repository to request a GitHub App installation. If an organization application policy is active, any organization member can request to install an OAuth App on an organization. An organization owner must approve or deny the request.
  • Establish language needed
  • Create base GitHub app and setup (probably storage account connection string?)
  • Add CI/CD to continuously push changes
  • Add deployment frequency metric to GitHub app
  • Review

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.