Repository navigation
Migrate to GitHub Actions - #8835
Conversation
78627cb to
5985aba
Compare
Integration report for "Migrate to GitHub actions with tests"
|
Integration report for "Migrate to GitHub actions with tests"
|
Integration report for "Migrate to GitHub actions with tests"
|
| pip install --no-deps -r requirements.txt | ||
| pip-sync --pip-args=--no-deps | ||
| - name: Save cached virtualenv | ||
| if: steps.cache-venv.outputs.cache-hit != 'true' |
There was a problem hiding this comment.
I don't see a cache-venv step. Is that missing? This build job outputs a Cache save failed. warning which I'm guessing is because the key is already used by a previous build. Did you mean to attempt to pull from the cache before this?
| PATH=".venv/bin:$PATH" pip-compile --allow-unsafe --generate-hashes --quiet | ||
| git diff --exit-code -G '^ *[^# ]' -- requirements.txt | ||
|
|
||
| verify-format-yaml: |
There was a problem hiding this comment.
The run page shows a bunch of yaml warnings in the annotations section which is useful but those should be fixed as part of this.
| needs: [generate-dags, main-generate-sql-and-dags, decide-runs] | ||
| if: | | ||
| (github.ref != 'refs/heads/main') && | ||
| (needs.decide-runs.outputs.validate-sql == 'true' || needs.decide-runs.outputs.validate-routines == 'true' || needs.decide-runs.outputs.deploy == 'true') |
There was a problem hiding this comment.
outputs.deploy = "${{ github.ref }}" == "refs/heads/main" so it would always be false
| (needs.decide-runs.outputs.validate-sql == 'true' || needs.decide-runs.outputs.validate-routines == 'true' || needs.decide-runs.outputs.deploy == 'true') | |
| (needs.decide-runs.outputs.validate-sql == 'true' || needs.decide-runs.outputs.validate-routines == 'true') |
|
|
||
| At this point, the table exists in Bigquery so you are able to: | ||
| - [Find and re-run the CI](https://app.circleci.com/pipelines/github/mozilla/bigquery-etl?) of your PR and make sure that all tests pass | ||
| - [Find and re-run the CI](https://github.com/mozilla/bigquery-etl/actions) of your PR and make sure that all tests pass |
There was a problem hiding this comment.
The top-level actions page has a lot of other stuff in it which would make it harder to find a specific run
| - [Find and re-run the CI](https://github.com/mozilla/bigquery-etl/actions) of your PR and make sure that all tests pass | |
| - [Find and re-run the CI](https://github.com/mozilla/bigquery-etl/actions/workflows/build.yml) of your PR and make sure that all tests pass |
| 1. Open a new PR with these changes. | ||
| 1. PR reviewed and approved. | ||
| 1. Find and run again the [CI pipeline](https://app.circleci.com/pipelines/github/mozilla/bigquery-etl?) for the PR. | ||
| 1. Find and run again the [CI pipeline](https://github.com/mozilla/bigquery-etl/actions) for the PR. |
There was a problem hiding this comment.
| 1. Find and run again the [CI pipeline](https://github.com/mozilla/bigquery-etl/actions) for the PR. | |
| 1. Find and run again the [CI pipeline](https://github.com/mozilla/bigquery-etl/actions/workflows/build.yml) for the PR. |
| # running bq in CircleCI will fail since it's not installed | ||
| # in GitHub Actions, bq is installed but may fail for other reasons |
There was a problem hiding this comment.
This reads like it's one (confusing) sentence
| # running bq in CircleCI will fail since it's not installed | |
| # in GitHub Actions, bq is installed but may fail for other reasons | |
| # Running bq in CircleCI will fail since it's not installed. | |
| # In GitHub Actions, bq is installed but may fail for other reasons |
| # running bq in CircleCI will fail since it's not installed | ||
| # in GitHub Actions, bq is installed but may fail for other reasons |
There was a problem hiding this comment.
| # running bq in CircleCI will fail since it's not installed | |
| # in GitHub Actions, bq is installed but may fail for other reasons | |
| # Running bq in CircleCI will fail since it's not installed. | |
| # In GitHub Actions, bq is installed but may fail for other reasons |
| # running bq in CircleCI will fail since it's not installed | ||
| # in GitHub Actions, bq is installed but may fail for other reasons |
There was a problem hiding this comment.
| # running bq in CircleCI will fail since it's not installed | |
| # in GitHub Actions, bq is installed but may fail for other reasons | |
| # Running bq in CircleCI will fail since it's not installed. | |
| # In GitHub Actions, bq is installed but may fail for other reasons |
Integration report for "Migrate to GitHub Actions"
|
Co-authored-by: Ben Wu <12437227+BenWu@users.noreply.github.com>
Integration report for "Migrate to GitHub Actions"
|
BenWu
left a comment
There was a problem hiding this comment.
Hopefully this is the last thing to get the cache working. Everything else LGTM
* casting installs as integer to match schema * updating schema to match table * removing sql logic change
… getting overwritten (#8853) * fix(SubPlat): Remove partitioning from ETLs where the whole table is getting overwritten. * docs(SubPlat): Add comments explaining why we avoid using partitioning for certain ETLs.
I missed adding this one the first time around. Co-authored-by: Anna Scholtz <anna@scholtzan.net>
Integration report for "Migrate to GitHub Actions"
|
Integration report for "Migrate to GitHub Actions"
|
Description
This PR migrates bigquery-etl to Github Actions. mozilla/telemetry-airflow#2339 needs to be merged alongside it as this will also change where docker images will get published to (GAR).
CircleCI will need to be disabled once this is merged.
I did test most of the CI tasks (also those that will just run on
main) in github.com/mozilla/bigquery-etl/actions/runs/21886512482 (except for syncing the DAGs submodules) and made some SQL changes there to trigger stage deploys. Some CI tests run a few seconds faster, some a few seconds slower compared to CircleCI (https://app.circleci.com/pipelines/github/mozilla/bigquery-etl/57677/workflows/61769702-d64a-49c9-a571-de1de5c9999a). Overall, the runtime seems to be about the same.An annoying thing with Github Actions is that it creates a deployment when accessing environment variables in the
devenvironment. The stage deploy credentials need to come from that environment (see https://github.com/mozilla/dataservices-infra/pull/1512#discussion_r2775354202). There is an open roadmap item to decouple deployments from using the environment variables: https://github.com/orgs/community/discussions/36919 but until this is implemented every time a CI task runs that accesses an environment variable it adds a message to the PR.Related Tickets & Documents
Reviewer, please follow this checklist