kamal 2.0.0.rc1 → 2.0.0.rc3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/kamal/cli/accessory.rb +1 -1
- data/lib/kamal/cli/app.rb +1 -1
- data/lib/kamal/cli/proxy.rb +1 -1
- data/lib/kamal/cli/templates/deploy.yml +42 -32
- data/lib/kamal/cli/templates/secrets +3 -2
- data/lib/kamal/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0acf7f55645630211284dffb4f7f5db52eb35cd3f5cb2db8ab50a5448ce7f930
|
4
|
+
data.tar.gz: b8ae61897e21ec514a1957697ef936dd9eaee88f90fcbb6fd5e15c3d9e5ef6a7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 26210d782be1d4c8d916dfb9dfaccd2e3b00792186959df4e11dc6f54db7b87279c56fe52b726681eb93dd5c61c9dde7d5e6321b1058d25988d3f38b493ca81e
|
7
|
+
data.tar.gz: 21d0ba0ffcd5731843f6f5d6705bdad5b3cb1e055c6516da6112781fd72957d3a02fc28ca389f58896f725288555bc66dd8ec31a5729ff7cd29ed04e8bbd8d2f
|
data/lib/kamal/cli/accessory.rb
CHANGED
@@ -147,7 +147,7 @@ class Kamal::Cli::Accessory < Kamal::Cli::Base
|
|
147
147
|
option :grep, aliases: "-g", desc: "Show lines with grep match only (use this to fetch specific requests by id)"
|
148
148
|
option :grep_options, aliases: "-o", desc: "Additional options supplied to grep"
|
149
149
|
option :follow, aliases: "-f", desc: "Follow logs on primary server (or specific host set by --hosts)"
|
150
|
-
option :skip_timestamps, aliases: "-T", desc: "Skip appending timestamps to logging output"
|
150
|
+
option :skip_timestamps, type: :boolean, aliases: "-T", desc: "Skip appending timestamps to logging output"
|
151
151
|
def logs(name)
|
152
152
|
with_accessory(name) do |accessory, hosts|
|
153
153
|
grep = options[:grep]
|
data/lib/kamal/cli/app.rb
CHANGED
@@ -188,7 +188,7 @@ class Kamal::Cli::App < Kamal::Cli::Base
|
|
188
188
|
option :grep, aliases: "-g", desc: "Show lines with grep match only (use this to fetch specific requests by id)"
|
189
189
|
option :grep_options, aliases: "-o", desc: "Additional options supplied to grep"
|
190
190
|
option :follow, aliases: "-f", desc: "Follow log on primary server (or specific host set by --hosts)"
|
191
|
-
option :skip_timestamps, aliases: "-T", desc: "Skip appending timestamps to logging output"
|
191
|
+
option :skip_timestamps, type: :boolean, aliases: "-T", desc: "Skip appending timestamps to logging output"
|
192
192
|
def logs
|
193
193
|
# FIXME: Catch when app containers aren't running
|
194
194
|
|
data/lib/kamal/cli/proxy.rb
CHANGED
@@ -140,7 +140,7 @@ class Kamal::Cli::Proxy < Kamal::Cli::Base
|
|
140
140
|
option :lines, type: :numeric, aliases: "-n", desc: "Number of log lines to pull from each server"
|
141
141
|
option :grep, aliases: "-g", desc: "Show lines with grep match only (use this to fetch specific requests by id)"
|
142
142
|
option :follow, aliases: "-f", desc: "Follow logs on primary server (or specific host set by --hosts)"
|
143
|
-
option :skip_timestamps, aliases: "-T", desc: "Skip appending timestamps to logging output"
|
143
|
+
option :skip_timestamps, type: :boolean, aliases: "-T", desc: "Skip appending timestamps to logging output"
|
144
144
|
def logs
|
145
145
|
grep = options[:grep]
|
146
146
|
timestamps = !options[:skip_timestamps]
|
@@ -2,11 +2,22 @@
|
|
2
2
|
service: my-app
|
3
3
|
|
4
4
|
# Name of the container image.
|
5
|
-
image: user/my-app
|
5
|
+
image: my-user/my-app
|
6
6
|
|
7
7
|
# Deploy to these servers.
|
8
8
|
servers:
|
9
|
-
|
9
|
+
web:
|
10
|
+
- 192.168.0.1
|
11
|
+
# job:
|
12
|
+
# hosts:
|
13
|
+
# - 192.168.0.1
|
14
|
+
# cmd: bin/jobs
|
15
|
+
|
16
|
+
# Enable SSL auto certification via Let's Encrypt (and allow for multiple apps on one server).
|
17
|
+
# Set ssl: false if using something like Cloudflare to terminate SSL (but keep host!).
|
18
|
+
proxy:
|
19
|
+
ssl: true
|
20
|
+
host: app.example.com
|
10
21
|
|
11
22
|
# Credentials for your image host.
|
12
23
|
registry:
|
@@ -14,7 +25,7 @@ registry:
|
|
14
25
|
# server: registry.digitalocean.com / ghcr.io / ...
|
15
26
|
username: my-user
|
16
27
|
|
17
|
-
# Always use an access token rather than real password
|
28
|
+
# Always use an access token rather than real password (pulled from .kamal/secrets).
|
18
29
|
password:
|
19
30
|
- KAMAL_REGISTRY_PASSWORD
|
20
31
|
|
@@ -22,19 +33,44 @@ registry:
|
|
22
33
|
builder:
|
23
34
|
arch: amd64
|
24
35
|
|
25
|
-
# Inject ENV variables into containers (secrets come from .
|
26
|
-
#
|
36
|
+
# Inject ENV variables into containers (secrets come from .kamal/secrets).
|
37
|
+
#
|
27
38
|
# env:
|
28
39
|
# clear:
|
29
40
|
# DB_HOST: 192.168.0.2
|
30
41
|
# secret:
|
31
42
|
# - RAILS_MASTER_KEY
|
32
43
|
|
44
|
+
# Aliases are triggered with "bin/kamal <alias>". You can overwrite arguments on invocation:
|
45
|
+
# "bin/kamal logs -r job" will tail logs from the first server in the job section.
|
46
|
+
#
|
47
|
+
# aliases:
|
48
|
+
# shell: app exec --interactive --reuse "bash"
|
49
|
+
|
33
50
|
# Use a different ssh user than root
|
51
|
+
#
|
34
52
|
# ssh:
|
35
53
|
# user: app
|
36
54
|
|
37
|
-
# Use
|
55
|
+
# Use a persistent storage volume.
|
56
|
+
#
|
57
|
+
# volumes:
|
58
|
+
# - "app_storage:/app/storage"
|
59
|
+
|
60
|
+
# Bridge fingerprinted assets, like JS and CSS, between versions to avoid
|
61
|
+
# hitting 404 on in-flight requests. Combines all files from new and old
|
62
|
+
# version inside the asset_path.
|
63
|
+
#
|
64
|
+
# asset_path: /app/public/assets
|
65
|
+
|
66
|
+
# Configure rolling deploys by setting a wait time between batches of restarts.
|
67
|
+
#
|
68
|
+
# boot:
|
69
|
+
# limit: 10 # Can also specify as a percentage of total hosts, such as "25%"
|
70
|
+
# wait: 2
|
71
|
+
|
72
|
+
# Use accessory services (secrets come from .kamal/secrets).
|
73
|
+
#
|
38
74
|
# accessories:
|
39
75
|
# db:
|
40
76
|
# image: mysql:8.0
|
@@ -56,29 +92,3 @@ builder:
|
|
56
92
|
# port: 6379
|
57
93
|
# directories:
|
58
94
|
# - data:/data
|
59
|
-
|
60
|
-
# Bridge fingerprinted assets, like JS and CSS, between versions to avoid
|
61
|
-
# hitting 404 on in-flight requests. Combines all files from new and old
|
62
|
-
# version inside the asset_path.
|
63
|
-
#
|
64
|
-
# If your app is using the Sprockets gem, ensure it sets `config.assets.manifest`.
|
65
|
-
# See https://github.com/basecamp/kamal/issues/626 for details
|
66
|
-
#
|
67
|
-
# asset_path: /rails/public/assets
|
68
|
-
|
69
|
-
# Configure rolling deploys by setting a wait time between batches of restarts.
|
70
|
-
# boot:
|
71
|
-
# limit: 10 # Can also specify as a percentage of total hosts, such as "25%"
|
72
|
-
# wait: 2
|
73
|
-
|
74
|
-
# Configure the role used to determine the primary_host. This host takes
|
75
|
-
# deploy locks, runs health checks during the deploy, and follow logs, etc.
|
76
|
-
#
|
77
|
-
# Caution: there's no support for role renaming yet, so be careful to cleanup
|
78
|
-
# the previous role on the deployed hosts.
|
79
|
-
# primary_role: web
|
80
|
-
|
81
|
-
# Controls if we abort when see a role with no hosts. Disabling this may be
|
82
|
-
# useful for more complex deploy configurations.
|
83
|
-
#
|
84
|
-
# allow_empty_roles: false
|
@@ -1,5 +1,6 @@
|
|
1
|
-
#
|
2
|
-
#
|
1
|
+
# Secrets defined here are available for reference under registry/password, env/secret, builder/secrets,
|
2
|
+
# and accessories/*/env/secret in config/deploy.yml. All secrets should be pulled from either
|
3
|
+
# password manager, ENV, or a file. DO NOT ENTER RAW CREDENTIALS HERE! This file needs to be safe for git.
|
3
4
|
|
4
5
|
# Option 1: Read secrets from the environment
|
5
6
|
KAMAL_REGISTRY_PASSWORD=$KAMAL_REGISTRY_PASSWORD
|
data/lib/kamal/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kamal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.rc3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Heinemeier Hansson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-09-
|
11
|
+
date: 2024-09-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|