Ad-hoc deploys

Once you added the Gimlet deploy step in your CI workflow, every commit becomes deployable in Gimlet - given that CI has built the commit and the workflow reached the Gimlet step.

This is possible as in the Gimlet step CI passes a large chunk of metadata (called the Gimlet artifact) to the Gimlet API, and Gimlet knows everything about the commit to perform an ad-hoc deploy.

Making ad-hoc deploys from the dashboard

Step 1 screenshot

To make an ad-hoc deployment, click the Deploy dropdown on a commit and pick an environment to deploy to.

The rollout widget displays references to the gitops commits that Gimlet made to fulfill your deploy request,

Step 3 screenshot

and you can see your newly deployed application on the Gimlet dashboard:

Step 4 screenshot

Can't see the deploy button on your commit?

The deploy button becomes available for commits that CI has ran the Gimlet step for. If you don't see the deploy button, check your CI workflow and see if the Gimlet step was successful.

Making ad-hoc deploys with the CLI

Once you added the Gimlet step in your CI workflow, every commit becomes deployable in Gimlet.

Listing the releasable artifacts

To see all the releasable versions, run

gimlet artifact list --repo gimlet-io/demo-app

And see all the releasable versions:

gimlet-io/demo-app-4d6db203-5a18-471e-8e58-ad9e6402d1cf
a23bc8ee - Gimlet-CI integration (4 minutes ago) Laszlo Fogas
gimlet-io/demo-app@main https://github.com/gimlet-io/demo-app/commit/a23bc8ee3a4dbf6242d51b812a1c57eb9a78e43d
  demo-app -> staging

[...]
  • gimlet-io/demo-app-4d6db203-5a18-471e-8e58-ad9e6402d1cf is the artifact id in the above example
  • a23bc8ee - Gimlet-CI integration (4 minutes ago) Laszlo Fogas is the commit that can be deployed
  • demo-app -> staging is the available target environment

Can't see a the commit you want to deploy?

A commit only becomes available for deployment if the CI has shipped an artifact for it. If you don't see the commit, check your CI workflow and see if the Gimlet step was successful.

Releasing an artifact

Once you identified the artifact you want to release, issue the following Gimlet CLI command:

$ gimlet release make \
  --env staging \
  --artifact gimlet-io/demo-app-4d6db203-5a18-471e-8e58-ad9e6402d1cf

šŸ™†ā€ā™€ļø Release is now added to the release queue with ID fc495037-523b-44fd-a1ff-d68c828ee361
Track it with:
gimlet release track fc495037-523b-44fd-a1ff-d68c828ee361

Tracking releases

You can track the deploy with

gimlet release track fc495037-523b-44fd-a1ff-d68c828ee361

Or query the audit log:

gimlet release list --env staging --app demo-app