-
Notifications
You must be signed in to change notification settings - Fork 230
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: implement flag for error on ignore migration #275
feat: implement flag for error on ignore migration #275
Conversation
@sfc-gh-tmathew , I've stripped out the poetry package management from this pull request |
@sfc-gh-tmathew , I've also restored the METADATA database behavior. Existing tests are still passing. I'd appreciate your confirmation. |
I found the following notes while reviewing the old pull request:
I'll confirm this behavior shortly. |
@zanebclark Thank you for your contribution. Will need to understand the changes, some of them seem straight forward. @MACKAT05 started #157 on similar ability to reorganize code and improve developer experience with schemachange. Can we collaborate on the PRs that will increment the changes? Can we separate the PRs into the following categories and raise separate PRs for each of these?
Lastly, #205 is already address in 3.7.0 |
@sfc-gh-tmathew, I get nervous when I read "no functionality changes" 😬. Does that cover everything but the flag changes? Or, do we want to reorganize and retain SecretsManager and the print logging? |
@sfc-gh-tmathew , I'll start working on this weekend on the lesser of the two potential asks here. I'll create a different PR for the flag addition and flag deprecation and leave the rest alone.
|
6efe4ba
to
257a196
Compare
aa353b0
to
58d99f2
Compare
@sfc-gh-tmathew , I've created PR 1 targeting the code organization branch with the feature flag branch. It looks like I'm not able to cause that pull request to show up in this repo until there's a representation of the code-reorganization branch in this repo. |
@sfc-gh-tmathew , I've created PR 2 for deprecating the verbose flag. |
Per @sfc-gh-tmathew 's ask, closing this pull request with three separate pull requests with the same content: |
This is a resurrection of PR 222 with a few modifications. This pull request started out as a feature addition. It ended up being a bit of a repo refactor.
verbse
cli argument. Opt forlog-level
insteadif verbose
checks with a structlog logger and log levels.Config
object. For example, there was logic for checking the validity of a directory and the presence of environment variables. Centralizing this logic is conceptually easier for me to wrap my head around and makes testing much easier.cli.py
and into separate filesScript
class to clarify the APISnowflakeClient
and created aCredential
factory.max_published_version
will causeschemachange
will skip your script without complaint. To address this, I handle versioned scripts almost identically to repeatable scripts. I store the metadata on the script's execution in a dictionary and compare that to the scripts in the script directory. If a script is "stale", hasn't been applied, and the flag is true: I raise an exception.Vspam__
, future scripts versioned with the current epoch time will be skipped. Themax_published_version
is nowspam
and cannot be trumped by a number. To address this, I've added aversion_number_validation_regex
CLI argument that will rejectspam
as a version number if I've specificed\d{10}