Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Normalize workflow naming and mage usage [WIP] #2987

Closed
Tracked by #3364
Sharpz7 opened this issue Sep 20, 2023 · 1 comment
Closed
Tracked by #3364

Normalize workflow naming and mage usage [WIP] #2987

Sharpz7 opened this issue Sep 20, 2023 · 1 comment
Labels
component/CI CI related changes type/code Code-related changes

Comments

@Sharpz7
Copy link
Contributor

Sharpz7 commented Sep 20, 2023

This ticket will track potential things to cleanup in our CI.

A lot of this can be based on what is present in https://github.com/G-Research/fasttrackml/tree/main/.github/workflows

New Structure

The only yamls that should be in the main workflows folder are the ones with the on tag. The goal of this is to have a structure that is easier to follow.

I think we should have a https://github.com/armadaproject/armada/blob/master/.github/workflows/ci.yml for each "type" of CI job:

  • ci.yml: handles the main CI stuff
  • ci-release.yml: handles releases
  • ci-page.yml: handles the website
  • ci-clients.yml handles the clients 
  • ci-third-party.yml: handles third-party elements (i.e. airflow)

We can then have other folders to keep everything else. I.e go, python etc. This should help CI look cleaner and keep to the DRY principle, and make it more "natural" to keep our CI consistent across everything. (Based on code here: m4rs-mt/ILGPU#1046)

Mage / Tox Changes

All tox commands should go through mage to make CI consistent. It also removed the problem of needing to be in a different folder for it to work. Everything should be runnable from the root of the repo.

Mage Update / Verify

These are targets that Kubernetes has. Verify is equivalent to running CI locally in full. Update is everything like docs, linting, builds, being done for you in one bundled command.

Lookout CI Additions

We should:

  • Lint and build Lookout in CI
  • Cache lookout builds
  • Copy the build instead of re-building inside the image for the "prepare" job in CI.
@Sharpz7 Sharpz7 added type/code Code-related changes component/CI CI related changes labels Sep 20, 2023
@Sharpz7 Sharpz7 mentioned this issue Sep 25, 2023
@Sharpz7 Sharpz7 self-assigned this Sep 26, 2023
@Sharpz7 Sharpz7 mentioned this issue Oct 27, 2023
5 tasks
@richscott richscott changed the title CI Spring Clean [WIP] Normalize workflow naming and mage usage [WIP] Nov 14, 2023
@richscott richscott mentioned this issue Feb 2, 2024
7 tasks
@dave-gantenbein
Copy link
Member

Won't do

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/CI CI related changes type/code Code-related changes
Projects
None yet
Development

No branches or pull requests

2 participants