28 Commits

Author SHA1 Message Date
Marc Campbell
9aae843dcb Remove TTL expiry verification from smoke test
Reaper runs on interval, so TTL expiry timing is non-deterministic.
Keep just the push/pull validation for now.

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 12:24:03 +00:00
Marc Campbell
d32aa3f76e Add smoke test: push/pull + TTL expiry verification
After deploy, tests:
1. Push busybox with 5m TTL (uses commit SHA for unique name)
2. Pull back to verify registry works
3. Wait 7 minutes for TTL to expire
4. Verify pull fails (image correctly deleted)

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 12:04:28 +00:00
Marc Campbell
41695d4a30 Remove unnecessary GHCR token (packages are public)
Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 12:02:47 +00:00
Marc Campbell
b537597c95 Switch from GAR to GHCR for container images
- Update docker-compose.yaml to use ghcr.io/replicatedhq/ttlsh-* images
- Simplify CI auth using GITHUB_TOKEN (no GCP credentials needed)
- Update ansible to use docker login for GHCR instead of gcloud
- Remove google.cloud ansible collection (no longer needed for registry)

GHCR is simpler: automatic auth via GITHUB_TOKEN in Actions,
and packages can be made public for pull access on servers.

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 11:55:06 +00:00
Marc Campbell
4ba01e35fc Fix CI: create empty .env file for docker-compose build
docker-compose.yaml references env_file: .env which is created by
Ansible on the server but doesn't exist in the repo. Create an empty
file during CI build to satisfy the reference.

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 11:45:31 +00:00
Marc Campbell
fa9959bff1 Target prerelease branch for deployment testing
Temporarily deploy on merge to prerelease branch instead of main.
This allows testing the deploy workflow without requiring PR approval.

TODO: Switch back to main after testing is complete.
Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 11:02:50 +00:00
Marc Campbell
d15a431aab Enable real deploys
- Remove dry run flags
- Build and push images to Artifact Registry
- Run Ansible without --check flag

Deploys will now happen automatically on merge to main.

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-03 00:20:42 +00:00
Marc Campbell
233df3c8cb Make workflow dry run only for testing
- Build images but skip push
- Run Ansible with --check flag (no changes made)
- Renamed workflow to indicate dry run mode

This lets us verify credentials and workflow before enabling real deploys.

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-02 20:43:42 +00:00
Marc Campbell
48ea9b9f2d Add GitHub Actions workflow for automated deployment
- Triggers on merge to main
- Uses Doppler for secrets management
- Builds and pushes Docker images to GCP Artifact Registry
- Runs Ansible playbook to deploy to production

Required GitHub secrets:
- DOPPLER_TOKEN: Service token for Doppler ttl-sh project
- SSH_PRIVATE_KEY: Private key for SSH access to production server

Signed-off-by: Marc Campbell <marc.e.campbell@gmail.com>
2026-02-02 20:31:20 +00:00
Josh Sandlin
59fbd0ebbe feat: migrate from Heroku to Google Cloud Platform 2025-09-04 15:41:17 -04:00
Ethan Mosbaugh
4366d098e0 Revert "feat: run blob reaper every 72h" (#158)
Some checks failed
Deploy to Heroku / release (push) Failing after 1m40s
2024-10-09 14:10:50 -05:00
Ethan Mosbaugh
1cb3f4e0f7 fix(ci): install heroku cli (#157) 2024-10-09 14:04:39 -05:00
Ethan Mosbaugh
32f12b8666 Reapply "feat: run blob reaper every 72h (#152)" (#155)
This reverts commit fad0b353a7.
2024-10-09 06:22:06 -07:00
Ethan Mosbaugh
fad0b353a7 Revert "feat: run blob reaper every 72h (#152)" (#155)
Some checks failed
Deploy to Heroku / release (push) Failing after 41s
This reverts commit b7ab57fa9b.
2024-10-08 15:49:15 -05:00
Ethan Mosbaugh
b7ab57fa9b feat: run blob reaper every 72h (#152)
* feat: run blob reaper every 24h

* f

* f

* f

* f

* f

* f

* f

* f

* f
2024-10-08 15:05:19 -05:00
Salah Al Saleh
9e71d14711 rename nginx dyno to web (#142) 2024-03-15 11:48:41 -07:00
Salah Al Saleh
9f724f12b9 Deploy nginx as a separate heroku app (#140) 2024-03-15 11:37:14 -07:00
Josh Sandlin
df3f579a6f Deploy an nginx proxy service to Heroku (#136)
Deploy an nginx proxy service to Heroku

---------

Co-authored-by: Salah Al Saleh <sg.alsaleh@gmail.com>
2024-03-15 10:32:40 -07:00
Salah Al Saleh
5d3ae58d9c fix release workflow (#94) 2022-07-26 16:57:50 -07:00
Salah Al Saleh
4cbd6d5ede fix github action (#90) 2022-07-26 14:56:32 -07:00
Marc Campbell
7b35b76304 Rename dependabot.yaml to dependabot.yml 2021-11-19 09:35:35 -10:00
Adam Dobrawy
f90f3aad09 Delete main.workflow 2021-11-19 10:47:07 +01:00
miguelvizdev
ae673f11bf moved main.workflows into workflow folder 2021-11-17 21:19:17 +01:00
miguelvizdev
e74d8cde56 add dependabot config 2021-11-17 09:37:12 +01:00
miguelvizdev
ab986aeb57 converted workflow to yaml 2021-11-17 09:20:03 +01:00
Marc Campbell
787cd4dd87 More rename 2019-05-21 13:01:45 +00:00
Marc Campbell
6052d4e006 Release reaper in action 2019-05-16 00:57:59 +00:00
Marc Campbell
d84f0ad89d First commit 2019-05-15 23:58:50 +00:00