Commit Graph
32 Commits
Author SHA1 Message Date
Donal McBreen 0cb69a84f5 Don't git ignore .kamal/secrets
Secrets should be interpolated at runtime so we do want the file in git.

But add a warning at the top to avoid adding secrets or git ignore the
file if you do.

Also provide examples of the three options for interpolating secrets.
2024-09-11 12:16:18 +01:00
Donal McBreen 06f4caa866 Make the secrets commands inline aware
Rather than redirecting the global $stdout, which is not never clever in
a threaded program, we'll make the secrets commands aware they are
being inlined, so they return the value instead of printing it.

Additionally we no longer need to interrupt the parent process on error
as we've inlined the command - exit 1 is enough.
2024-09-10 10:39:44 +01:00
Donal McBreen aed2ef99d0 Use env files for secrets
Add env files back in for secrets - hides them from process lists and
allows you to pick up the latest env file when running
`kamal app exec` without reusing.
2024-09-09 14:43:12 +01:00
Donal McBreen 57cbf7cdb5 Inline dotenv kamal secrets calls 2024-09-06 16:56:54 +01:00
Donal McBreen 8ad6a0ed16 Add .kamal/secrets on kamal init 2024-09-06 11:54:12 +01:00
Donal McBreen 8b62e2694a Test non-ascii secret interpolation 2024-09-05 10:01:56 +01:00
Donal McBreen be1df4356a fetch_from_vault -> fetch_secrets 2024-09-05 09:53:33 +01:00
Donal McBreen 8210e8e768 Drop redundant rescue 2024-09-05 09:53:18 +01:00
Donal McBreen 9b96ef2412 Shellescape command input 2024-09-05 08:37:50 +01:00
Donal McBreen 1522d94ac9 Pass secrets to pre/post deploy hooks 2024-09-04 16:24:10 +01:00
Donal McBreen a68294c384 Remote test adapter from test_helper.rb 2024-09-04 12:57:25 +01:00
Donal McBreen 31a347c285 Move int parent comment 2024-09-04 12:52:30 +01:00
Donal McBreen 3d502ab12d Add test adapter and interpolate secrets in integration tests 2024-09-04 12:40:27 +01:00
Donal McBreen 5226d52f8a Interrupting parent on error 2024-09-04 12:14:47 +01:00
Donal McBreen 9deb8af4a0 Don't hide command 2024-09-04 09:32:45 +01:00
Donal McBreen 068aaa0bd0 Fix options 2024-09-04 09:32:45 +01:00
Donal McBreen a726a86a17 Add lastpass, bitwarden adapters 2024-09-04 09:32:45 +01:00
Donal McBreen b2e1a4d4c1 Secrets test 2024-09-04 09:32:45 +01:00
Donal McBreen 9ade79fc84 OnePassword, LastPass + Bitwarden adapters 2024-09-04 09:32:45 +01:00
Donal McBreen 79731da619 Single fetch command 2024-09-04 09:32:45 +01:00
Donal McBreen 0ae8046905 Add secret tests 2024-09-04 09:32:45 +01:00
Donal McBreen d5ecca0fd4 Add tests 2024-09-04 09:32:45 +01:00
Donal McBreen a2549b1f60 Allow disabling of local builds
To disable local builds set:
```
builder:
   local: false
   remote: ssh://docker@docker-builder
```
2024-09-03 14:33:25 +01:00
Donal McBreen e557eea79c Build and clean remote builders correctly
Check that the builder and context match what we expect, and if not
remove and re-create them.
2024-09-02 15:12:19 +01:00
Donal McBreen 9f0b10425c Fix aliases tests 2024-08-29 09:16:07 +01:00
Donal McBreen 5f2384f123 Use docker info to get arch 2024-08-29 08:46:18 +01:00
Donal McBreen eab7d3adc5 Keep buildx build, in case of old docker versions which don't default to buildkit 2024-08-29 08:45:51 +01:00
Donal McBreen d2d0223c37 Require an arch to be set, and default to amd64 in the template 2024-08-29 08:45:51 +01:00
Donal McBreen 2515bd705c Switch the version on main to 2.0.0.alpha
All development is now for the 2.0.0 release.
2024-08-29 08:33:21 +01:00
Donal McBreen 579e169be2 Allow multiple arguments for exec commands
If you can have an alias like:

```
aliases:
  rails: app exec -p rails
```

Then `kamal rails db:migrate:status` will execute
`kamal app exec -p rails db:migrate:status`.

So this works, we'll allow multiple arguments `app exec` and
`server exec` to accept multiple arguments.

The arguments are combined by simply joining them with a space. This
means that these are equivalent:

```
kamal app exec -p rails db:migrate:status
kamal app exec -p "rails db:migrate:status"
```

If you want to pass an argument with spaces, you'll need to quote it:

```
kamal app exec -p "git commit -am \"My comment\""
kamal app exec -p git commit -am "\"My comment\""
```
2024-08-28 10:58:25 +01:00
Donal McBreen d6f5da92be Bump version for 1.8.2 2024-08-28 09:43:06 +01:00
Donal McBreen 9ccfe20b10 Fix up tests 2024-08-26 11:20:26 +01:00