-
Notifications
You must be signed in to change notification settings - Fork 0
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
feat: use changed-files instead of jitterbit for deployment workflow [DE-231] #147
Conversation
(to see what the GHA does and confirm it's not deleted)
This reverts commit be53c1f.
…ch-alliance/dbt-cta into ec/dbt-deploy-fixes
This reverts commit 6bc5a6c.
This reverts commit 4e7167b.
…he deleted one?)" This reverts commit d1690c1.
I did a little science and I think this is just a quirk of the workflow the way it's set up. Maybe there's a way to fix this behavior, but I think it would require some additional logic. For awareness @jitoquinto @kanelouise @jackwelty, this means: After you deploy a branch to dev, the workflow will always be comparing your branch to I'll add a comment in the workflow explaining the above - just requested re-review @jitoquinto, lmk if this sounds ok! |
@emily-flambe gotcha, thanks for doing the science! That sounds good to me, especially since this really only applies to dev environment right? Prod will always just run when merged to main so we shouldnt run into that weirdness |
yep that's correct! a bit of weirdness is par for the course in dev anyway lol |
Our current list new/modified/deleted files comes from a repo, jitterbit, that is apparently abandoned. This means its functionality will degrade as GHA makes new releases.
This PR implements a different tool, changed-files, to do the same thing. Notably, this resolves a limitation of jitterbit - namely that there was no way to delete old filenames for renamed files, which would cause duplicate files to appear in GCS, resulting in chaos, heartbreak, etc. (which was the impetus for this journey of discovery).
Assigning to @jitoquinto and @kanelouise , and cc @michaelefisher since we'll likely want to do the same for our automatic airflow deployment as well.
Here is an example of a workflow run showing this doing the stuff it's supposed to do: https://github.com/community-tech-alliance/dbt-cta/actions/runs/4962581795/jobs/8880816533
One more note: I made this deliberately WET to make it super clear what's happening at every step. (Surely you could rewrite this with about 1/3 as many lines of code, but I personally think the readability is more important, at the expense of maybe failing a technical interview)