Commit Graph

1454 Commits

Author SHA1 Message Date
T. R. Bernstein 2eed47d464 Use 127.0.0.1 for ssh tunnel
The previous 'localhost' value was causing connection problems on the
remote host, such that it would not create a connection through the
tunnel to the specified port.
2025-08-29 23:51:23 +02:00
T. R. Bernstein 95cbc62ef1 Use local docker registry to push and pull app images 2025-08-29 16:55:50 +02:00
Mike Dalessio 8e470ed051 Builder::Remote.inspect_builder requires both checks to pass
Previously, if either of the builder or the remote context were in a
bad state, the build would proceed anyway and fail.
2025-07-17 15:41:38 -04:00
Andy Stewart cfaa4fb0db Remove obsolete conditional
This postfix conditional is left over from the refactor in #1584 and is no longer needed.
2025-06-20 10:53:17 +01:00
Donal McBreen 2bcb313590 Fix typo: host -> more 2025-06-19 14:17:16 +01:00
Donal McBreen e61d96d154 Update custom cert docs
Remove ssl: ..., reword some of the docs and ensure the formatting is
correct.
2025-06-18 11:13:07 +01:00
Donal McBreen aa2ceaa92a Bump version for 2.7.0 2025-06-18 10:27:00 +01:00
Donal McBreen c3e7721da5 Bump version for 2025-06-18 10:24:55 +01:00
Donal McBreen 0656e02375 Doc update from @acidtib in https://github.com/basecamp/kamal-site/pull/174 2025-06-17 15:42:15 +01:00
Donal McBreen aed77a78fb Formatting fixes for docs 2025-06-17 15:34:27 +01:00
Donal McBreen 6e517665e8 OnePassword adapter refactor
- fix rubocop offenses
- extract fields_map
- no early return
- include fields in error message
2025-06-17 11:37:30 +01:00
Donal McBreen 4b0afdf42b Merge pull request #1567 from capripot/add_all_fields_one_password_retrieval
feat: Add allowing retrieving all fields for an item
2025-06-17 11:22:10 +01:00
Donal McBreen ccbcbbc8c5 Custom certs per role
- Upload the cert with `sshkit.upload!`
- Use the role name to create a directory for each role's certs
- Add an integration test for the custom certs
2025-06-17 10:26:57 +01:00
Donal McBreen 8a7260d1e9 Merge pull request #1531 from acidtib/feat/custom-ssl
feat: Add support for custom certificates
2025-06-17 09:25:15 +01:00
Donal McBreen 89c56910c9 Merge pull request #1551 from ACPK/kamal-proxy-path-prefix
Add support for kamal-proxy's path-prefix
2025-06-16 11:07:23 +01:00
Donal McBreen 52e06c1351 Merge pull request #1570 from nickcoyne/bws-secrets
Request Bitwarden Secrets Manager secrets as JSON
2025-06-16 10:59:53 +01:00
Donal McBreen e2015b47f9 Merge pull request #1422 from acidtib/feat/secrets-add-passbolt-adapter
feat(secrets): add Passbolt adapter
2025-06-16 09:14:07 +01:00
Donal McBreen 054a85d3c0 Merge pull request #916 from nickhammond/buildpacks
Add pack option to the builder options for cloud native buildpacks
2025-06-16 08:57:27 +01:00
Donal McBreen 5a0da160b4 Merge pull request #1440 from ursm/bws
Fix Bitwarden Secrets Manager authentication checks
2025-06-16 08:56:24 +01:00
Donal McBreen a201a6ca68 Merge pull request #1544 from prullmann/kamal-exec-piping
Allow piping into kamal exec #1485
2025-06-16 07:52:03 +01:00
Donal McBreen fd6ac4f84b Merge pull request #1539 from miguno/issue-1538
Fix: correctly parse git remote origin urls for calling Octokit
2025-06-12 09:04:07 +01:00
Nick Hammond 6672e3e77d Remove blank line 2025-06-09 19:47:26 -07:00
Nick Hammond b164d50ff1 Check for label presence in the validation, don't validate labels on simple role setup 2025-06-09 19:36:27 -07:00
Nick Hammond 1d88281fee Validate that destination, role, and service are not set as labels on roles and accessories 2025-06-09 19:08:20 -07:00
Nick Coyne a004232ffc Request secrets as json 2025-06-02 09:06:05 +12:00
Nick Hammond 487aa306c9 Merge branch 'basecamp:main' into buildpacks 2025-05-23 10:59:05 -07:00
capripot cbf94fa7f5 feat: Add allowing retrieving all fields for an item
With 1Password, there is a way to retrieve all fields
of a given item directly without having to enumerate them.

Allowing this when passing no arguments for secrets fetch
command.
2025-05-22 22:21:51 -07:00
Donal McBreen b387df0e4f KAMAL_HOST env var mop-up
- Ensure tests pass
- Switch from -e to --env everywhere
- Check KAMAL_HOST env var in integration tests
2025-05-20 14:10:50 +01:00
Donal McBreen 9c8a44eec4 Merge pull request #1471 from jakeprem/jakeprem/add-kamal-host-var
feat: Add KAMAL_HOST to app and accessory containers
2025-05-20 13:48:35 +01:00
Dainel Vera 99f763d742 Merge branch 'main' into feat/custom-ssl 2025-05-19 15:38:33 -06:00
Nick Hammond 4bd1f0536c Merge branch 'basecamp:main' into buildpacks 2025-05-16 15:21:49 -07:00
Donal McBreen 22e7243b10 Bump version for 2.6.1 2025-05-15 15:15:29 +01:00
Donal McBreen 259a018d5a Merge pull request #1558 from basecamp/per-role-proxy-docs
Per role proxy docs
2025-05-15 15:00:11 +01:00
Donal McBreen a82e88d5c9 Merge pull request #1560 from basecamp/dont-redeploy-on-proxy-reboot
Don't deploy on proxy reboot
2025-05-15 14:57:58 +01:00
Donal McBreen ad21c7e984 Don't deploy on proxy reboot
It shouldn't be necessary to deploy the app on proxy reboot. When there
are multiple apps using the same proxy we'll only deploy the one we
run the reboot command from, so we don't always reboot anyway.
2025-05-15 14:45:19 +01:00
Donal McBreen 87965281a3 Default the proxy config is it is nil
Instead of checking for the proxy key, we'll set the config to {} if it
is nil in the Kamal::Configuration::Proxy initializer.

This is a bit cleaner, and maybe it will help with
https://github.com/basecamp/kamal/issues/1555 if somehow
@raw_config.key?(:proxy) is false but @raw_config.proxy is not nil.
2025-05-15 14:33:05 +01:00
Donal McBreen 7b1439c3c6 Update per-role proxy docs
Clarify that proxy: true/proxy: false only belong in the role config,
not at the root level.
2025-05-15 10:14:52 +01:00
Donal McBreen b9e5ce7ca7 Ensure primary_role app hosts are sorted first
When booting non-primary role hosts we will always wait for a primary
role host to boor first.

So when booting in groups, if there are no primary role hosts in the
first batch, then booting will stall.

Sort primary role app_hosts first to avoid this.

Fixes: https://github.com/basecamp/kamal/issues/1553
2025-05-15 09:51:40 +01:00
Donal McBreen 2c1d6ed891 Run pre-connect hooks before building
They might be needed for remote builds or the pre-build hook.
2025-05-14 15:55:54 +01:00
Andrew Kelley 1331e7b9c7 Added path_prefix and strip_path_prefix 2025-05-13 19:31:54 -04:00
Nick Hammond c5e5f5d7cc Merge branch 'basecamp:main' into buildpacks 2025-05-13 09:34:13 -07:00
Keita Urashima 6a573c19a6 Fix Bitwarden Secrets Manager authentication checks 2025-05-13 20:33:46 +09:00
Donal McBreen 031f55ecf7 Bump version for 2.6.0 2025-05-13 09:50:52 +01:00
Krzysztof Duda 78c9d610cf Add a singular role 2025-05-12 11:07:10 +02:00
Nick Hammond 0ab0649d07 Merge branch 'basecamp:main' into buildpacks 2025-05-10 12:54:29 -07:00
David Heinemeier Hansson 299c741c1b More natural api when you are just applying accessory to a single tag 2025-05-09 21:47:26 +02:00
David Heinemeier Hansson fb82d04aaf Use #filter_map instead of #collect + #compact 2025-05-09 21:30:33 +02:00
David Heinemeier Hansson 9d5a534ef8 Refactored for clarity and style 2025-05-09 21:26:41 +02:00
David Heinemeier Hansson 5ad000a08e Unnecessary parenthesis 2025-05-09 21:16:31 +02:00
David Heinemeier Hansson 9aac51bbd0 Extract hosts for accessories by tags 2025-05-09 21:11:28 +02:00