79639065

Date: 2025-05-26 14:08:02
Score: 3
Natty:
Report link

Could you give a bit more details for your question(s)?

But, based on what you’ve shared, you could do something like this: configure your CI file (.gitlab-ci.yml) with at least 4 stages - build, post_build, deploy, and rollback - and set when: manual rule on all build and deploy jobs so they only run when you click "play" in the GitLab UI.

In the build job, you’ll typically compile the JAR, store it as an artifact, and upload it to an S3 bucket (or just keep it as a GitLab artifact).

Next, have a post_build job that declares needs: ["build"] and runs automatically (no when: manual) to generate reports and upload them.

For each environment (dev, beta, prod), create deploy jobs with needs: ["build"], when: manual.

And then, include a manual rollback job that lists available versions, lets you choose one, copies it to the deploy directory, and restarts the app.

Edit: use as reference https://docs.gitlab.com/ci/jobs/job_rules/

Reasons:
  • RegEx Blacklisted phrase (2.5): Could you give
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Contains question mark (0.5):
  • Low reputation (1):
Posted by: Mateus Ferro