Donal McBreen
26b1d57c90
Install docker with curl or wget
...
If curl is not available to download the docker install script, try
with wget instead.
If neither is available or both fail, return a simple failing script
so that we don't carry on regardless.
Fixes: https://github.com/basecamp/kamal/issues/395
2024-03-07 10:16:03 +00:00
Trevor Vallender
f69c45b7ea
Add docker-setup hook
...
This allows the user to make any necessary configuration changes to
Docker before setting up any containers, allowing those configuration
changes to take effect from the outset.
2024-03-06 19:01:48 +00:00
Donal McBreen
5c32be10f1
Merge pull request #707 from basecamp/boot-strategy-min-limit-1
...
Ensure a minimum limit of 1 for % boot strategy
2024-03-06 16:06:35 +00:00
Donal McBreen
dc5af03593
Update tests to match single quotes
2024-03-06 16:04:31 +00:00
Donal McBreen
c4d0d3e5eb
Merge pull request #704 from basecamp/escape-registry-username-password
...
Escape the docker registry username and password
2024-03-06 15:58:46 +00:00
Donal McBreen
46e7cf8e78
Merge pull request #706 from basecamp/kamal-remove-noop
...
Ensure `kamal remove` completes without setup
2024-03-06 15:58:34 +00:00
Donal McBreen
c7cfc074b6
Ensure a minimum limit of 1 for % boot strategy
...
Fixes: https://github.com/basecamp/kamal/issues/681
2024-03-06 15:51:35 +00:00
Donal McBreen
8e2184d65e
Ensure kamal remove completes without setup
...
If `kamal setup` has not run or errored out part way through,
`kamal remove` should still complete.
Fixes: https://github.com/basecamp/kamal/issues/629
2024-03-06 14:59:26 +00:00
Donal McBreen
2be397b679
Escape the docker registry username and password
...
Fixes: https://github.com/basecamp/kamal/issues/278
2024-03-06 11:04:55 +00:00
Donal McBreen
cc8c508556
Merge branch 'main' into valid_service_name
2024-03-05 11:02:33 +00:00
Nick Hammond
3b16e047c5
Add hyphen to the allowed character list for service name
2024-03-04 10:03:22 -07:00
Ahmed Al Hafoudh
91f350fcce
Merge branch 'basecamp:main' into main
2024-03-04 16:22:28 +01:00
Nick Lozon
1acef5221f
test deep_merge
2024-03-04 10:06:30 -05:00
Donal McBreen
828cca322b
Merge pull request #650 from basecamp/retained-containers
...
Config the number of containers to keep
2024-03-04 12:05:35 +00:00
Donal McBreen
cb030e8751
Merge pull request #680 from igor-alexandrov/traefik-2.10
...
Bump default Traefik image to 2.10
2024-03-04 11:58:37 +00:00
Donal McBreen
6892abb4be
Config the number of containers to keep
...
By default we keep 5 containers around for rollback. The containers
don't take much space, but the images for them can.
Make the number of containers to retain configurable, either in the
config with the `retain_containers` setting on the command line
with the `--retain` option.
2024-03-04 11:55:45 +00:00
Donal McBreen
2e8071a5b3
Merge pull request #608 from CleverFew/fix_accessory_cli_host_params
...
Accessory CLI respects `--hosts`
2024-03-04 11:31:50 +00:00
Donal McBreen
200e2686fd
Merge pull request #506 from rience/custom-acc-service-name
...
Allow for Custom Accessory Service Name
2024-03-04 10:57:10 +00:00
Aleksandr Nigomatulin
064ace0598
Rollback passing invoke_options
2024-02-24 21:36:20 +06:00
Nick Hammond
a02af74dda
Add a simple validation to the service name to prevent setup issues
2024-02-22 09:47:48 -07:00
Aleksandr Nigomatulin
5ef384d666
Add test
2024-02-17 00:11:03 +06:00
Aleksandr Nigomatulin
b94dfe193b
Remove unnecessary code
2024-02-16 12:52:07 +06:00
Aleksandr Nigomatulin
bc6c027315
Upds according remarks
2024-02-16 11:56:58 +06:00
Krzysztof Adamski
1c2a45817a
Supports Passing SSH Args to Build Options
2024-02-15 14:20:20 +01:00
Krzysztof Adamski
b411356409
Allow for Custom Accessory Service Name
2024-02-15 11:12:18 +01:00
Igor Alexandrov
77e72e34ce
Bumped default Traefik image to 2.10
2024-02-13 16:00:02 +04:00
Daniel Jackson
1ec69d3764
Tell user about 'kamal lock help' when deploy fails due to a lock
2024-01-23 09:16:09 +01:00
dhh
5a09aa12ba
Allow local builds using a different arch than native
2024-01-10 13:00:48 -08:00
Donal McBreen
8b6d8306d1
Merge pull request #637 from basecamp/tests-wait-longer-for-health
...
Be a bit more patient during tests
2024-01-09 16:45:28 +00:00
Matthew Kent
9c681d4a38
Be a bit more patient during tests.
...
Seeing reasonably consistent local failures at 20 seconds.
2024-01-09 08:21:45 -08:00
Matthew Kent
2a8924b53c
Address Net::SSH::HostKeyMismatch seen locally between bin/test runs.
2024-01-09 08:21:30 -08:00
Ahmed Al Hafoudh
0d709a3fdb
Allow lines option to be configured when following app logs
2024-01-08 09:34:38 +01:00
Nick Lozon
f8d8319c2f
better test description
2023-12-12 15:37:12 -05:00
Nick Lozon
f6a9d54902
unit test
2023-12-12 15:07:29 -05:00
Matthew Kent
7fa53d90bd
Merge hashes to de-dupe the app and role envs.
...
This is better then adding them together which confusingly results in
both ENV vars in the same file, though based on the load order, they
worked anyway.
2023-11-28 15:59:03 -08:00
Donal McBreen
175e3bc159
Merge pull request #507 from leonvogt/introduce-absolute-accessories-paths
...
Add option to set an absolute directory path
2023-11-28 10:15:27 +00:00
Matthew Kent
63babecba7
Raise an error when either the filtered hosts or roles are empty.
...
Keeps us confusingly running things on the primary_host when nothing
matches.
2023-11-25 12:47:39 -08:00
Matthew Kent
79baa598fa
Make an effort to match the primary_role from a list of specific roles.
...
This is less surprising than picking the first role and first host.
2023-11-24 17:41:58 -08:00
Donal McBreen
11521517fa
Merge pull request #550 from dmitrytrager/feature-name-all-for-accessory-reboot
...
feature: add NAME=all option for accessory reboot
2023-11-16 08:50:51 +00:00
Donal McBreen
610d9de3fd
Merge pull request #580 from happyscribe/feat/no-web
...
Allow Kamal to run without traefik
2023-11-16 08:44:45 +00:00
Donal McBreen
a0959b5afd
Merge pull request #573 from basecamp/pre-post-traefik-reboot-hooks
...
Pre and post Traefik reboot hooks
2023-11-15 14:01:40 +00:00
Yoel Cabo
7472e5dfa6
Merge remote-tracking branch 'origin/main' into feat/no-web
2023-11-14 12:11:18 +01:00
Yoel Cabo
887b7dd46d
Do not invoke healthcheck on deploy when no web role
2023-11-14 11:34:32 +01:00
Matthew Kent
7137850354
Add support for wildcard matches with '*' on roles and hosts.
...
eg:
--roles=*_chicago,*_tokyo
--hosts=app-*
Useful for targeted deploys.
2023-11-13 23:43:23 -08:00
Donal McBreen
8a85840a47
Merge pull request #582 from basecamp/allow-empty-roles
...
Add allow_empty_roles to control aborting on roles with no hosts.
2023-11-13 09:30:01 +00:00
Donal McBreen
80cc0c23d8
Merge pull request #578 from basecamp/enable-yaml-aliases
...
Enable yaml aliases
2023-11-13 09:28:40 +00:00
Matthew Kent
60187cc3a4
Add allow_empty_roles to control aborting on roles with no hosts.
...
This added flexibility allows you to define base roles that might not
necessarily exist in each deploy destination.
2023-11-12 08:54:28 -08:00
Yoel Cabo
87cb8c1f71
fix: allow configurations without web roles
2023-11-12 09:39:07 +01:00
Matthew Kent
ed58ce6e61
Add test coverage with aliases.
2023-11-11 17:25:50 -08:00
Matthew Kent
073f745677
Test for both undefined roles and missing traefik.
2023-11-11 12:57:52 -08:00