Skip to content

[Feature Contribution]: Initial DevOps and github actions clean up #252

@danuw

Description

@danuw

What happened?

This is both an issue and a new feature.
It aims to address duplication in Github actions as well as bring consistency of approach.

First the audit with initial thoughts:

  • build-cli-dotnet: build everything and run all tests - remove if duplicated
  • build-packages: major functionality as library (Cli + webapi) - package integration test to ensure the library is working under happy path conditions => maybe publically github package as Beta
  • build-webapi: build test validate and compare => generated swagger changes should be part of the repo/tracked so obvious as part of the PR
  • codeQL-anamlysis: scheduled - security check - static analysis to check for vulnerabilities for updated dependencies
  • dev_carbon-aware-api: build test deploy DEV to public api endpoint
  • run-sdkCLI-githubaction: CI/CD carbon aware github action => use for CodeQL ACTION
  • verify-azure-function-with-packages: function validate the packages / solution deploys correctly and can I request the endpoint successfully => merge with others (e.g. build-packages)

Initial recommendation of first changes to address:

  • Rename to more meaningful actions and merge actions where needed
  • Separate into the following themes (main build actions):
  • - PR build and integration tests
    • do we separate per medium (cli vs webAPI)?
    • do we have separate build for each sample or only some?
  • - build (& deploy?) on PR merge
  • - Validate dependencies and integration tests (cron - can we use the CI/CD pipeline for this?)

Also (further topics to cover in github actions):

  • stale issues: implement git action to auto label and close old tickets (older than X days where X needs to be confirmed - may start with 60 or 90 days minimum and reduce overtime)
  • create releases?
  • highlight Swagger updates in release notes
  • I am also keen to version the builds and make sure it surfaces on the swagger as a relevant build version so people know if things have changed or that they are simply looking at the right thing (hoping that can be used in the analytics)

Thank you @bderusha for your inputs
cc @vaughanknight @Willmish

Code of Conduct

  • I agree to follow this project's Code of Conduct

Feature Commitment

  • I commit to contributing this feature as a PR and working with the GSF to merge this feature into the Carbon Aware SDK.

Metadata

Metadata

Assignees

Labels

devopsIdentify issues that impact delivery lifecycle as opposed to functionality (~basically code changes)for discussionTabled for discussion in weekly team callv1.2

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions