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

Incorporate more best practices into deploys #32

Open
dalin- opened this issue Jul 24, 2023 · 2 comments
Open

Incorporate more best practices into deploys #32

dalin- opened this issue Jul 24, 2023 · 2 comments

Comments

@dalin-
Copy link
Contributor

dalin- commented Jul 24, 2023

Right now there's pros/cons to both project_ci and pantheon-deploy:

CI

  • can complete a deploy without you/your-laptop being connected
  • you can easily share the output with someone else to debug

pantheon-deploy
Has a few more best-practices baked in

  • Is there overridden config on the source environment (i.e. is something not getting stored into config like it’s supposed to be?)
  • Is there overridden config on the destination environment (i.e. has someone made a change on the live site that is about to be blown away by your deploy). It can even automatically clean this up in some scenarios.

It'd be great to roll these into Project CI.

@generalredneck
Copy link
Collaborator

@dalin- ,
Looking into this feature,
It's going to be difficult to not outright fail CI on configuration sync issues and require some manual interaction. There's no easy way to say "If this command fails... require an approval" like you do with an interactive command like locally.

I think what I'm going to have to do here is Check for configuration changes, and if it fails either of those 2 items, Send a curl to the CircleCI API to fire off a new workflow that requires an approval, then fail the current job.

In both cases I think it would be wise to make an "Approval" workflow that allows you to continue regardless. This would have a different name. Example instead of "pantheon_build_deploy" the workflow would be something like "pantheon_push_anyway".

This will require a bit of training and a clear demonstration of how it works because it's not as simple as a bash script prompting you.

@generalredneck
Copy link
Collaborator

Need to add a link to the site and dashboard in the CI output.
Need to change the names of the Holds so they make more sense... Hold-Dev and Hold-Test means nothing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants