kamal 2.0.0.rc1 → 2.0.0.rc3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 80950d18ef8b135b87bca865f31422e8b367137a7561381b1566e07384a75b0b
4
- data.tar.gz: 0d86e69df81fabde4b6c0b0be0de1ca6f64f5cd94f3242d0f4702428aef9fbfa
3
+ metadata.gz: 0acf7f55645630211284dffb4f7f5db52eb35cd3f5cb2db8ab50a5448ce7f930
4
+ data.tar.gz: b8ae61897e21ec514a1957697ef936dd9eaee88f90fcbb6fd5e15c3d9e5ef6a7
5
5
  SHA512:
6
- metadata.gz: 5b1ae9daecd6fe5342d830c10be8e54b26d668703f8c731b6f920f38a7183dcb27bc8a97630d4f4bdc1891c56b1f8a669c79ba85f2400053313df4a5a994d1eb
7
- data.tar.gz: 61716c7a9e7fc1e3928a0ce30539accc3f9531f09d0835c37248cceb48fc19b90ba4c9d5f3e615335d505552988c92277e7e4e4447b8beb25991e2c8cead5a2e
6
+ metadata.gz: 26210d782be1d4c8d916dfb9dfaccd2e3b00792186959df4e11dc6f54db7b87279c56fe52b726681eb93dd5c61c9dde7d5e6321b1058d25988d3f38b493ca81e
7
+ data.tar.gz: 21d0ba0ffcd5731843f6f5d6705bdad5b3cb1e055c6516da6112781fd72957d3a02fc28ca389f58896f725288555bc66dd8ec31a5729ff7cd29ed04e8bbd8d2f
@@ -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
 
@@ -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
- - 192.168.0.1
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 when possible.
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 .env).
26
- # Remember to run `kamal env push` after making changes!
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 accessory services (secrets come from .env).
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
- # WARNING: Avoid adding secrets directly to this file
2
- # If you must, then add `.kamal/secrets*` to your .gitignore file
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
@@ -1,3 +1,3 @@
1
1
  module Kamal
2
- VERSION = "2.0.0.rc1"
2
+ VERSION = "2.0.0.rc3"
3
3
  end
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.rc1
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-20 00:00:00.000000000 Z
11
+ date: 2024-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport