orchestration 0.6.10 → 0.6.12
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/Gemfile.lock +1 -1
- data/README.md +5 -4
- data/lib/orchestration/install_generator.rb +15 -4
- data/lib/orchestration/make/orchestration.mk +8 -8
- data/lib/orchestration/terminal.rb +2 -1
- data/lib/orchestration/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: 1de0a5221b816f60d95a04376bb965de0f6381b585b454f3b8d49f1c0e05086d
|
4
|
+
data.tar.gz: 811bba578ba6e1166db99f95bf51dbb4e33e349f82e442013725651640d0bb63
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8fe95b455287bd1e7c4b874c3bccffc8595b259f11ea892419e23ba074c60235e1a1f48a8eeb71aef8a5a76522e0833717c3b22b06987326b8a67a5d4a0c128e
|
7
|
+
data.tar.gz: 716c7c3389b69be2d80ee0b1f690d42f66f09f047752c97d5b806aa88bd85998b446bf266b2ef7a57b357ae37337f3cea4a6e391a88456246f4f6fa726306b13
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -50,13 +50,14 @@ rake orchestration:install server=unicorn # (or 'puma' [default], etc.)
|
|
50
50
|
|
51
51
|
To rebuild all build-out at any time, pass `force=yes` to the above install command.
|
52
52
|
|
53
|
-
|
53
|
+
You will be prompted to enter values for your _Docker_ organisation and repository name. For example, the _organisation_ and _repository_ for https://hub.docker.com/r/rubyorchestration/sampleapp are `rubyorchestration` and `sampleapp` respectively. If you are unsure of these values, they can be modified later by editing `.orchestration.yml` in the root of your project directory.
|
54
|
+
|
55
|
+
Override these values from the command line by passing `project` and `organization` variables:
|
56
|
+
|
54
57
|
```bash
|
55
|
-
rake orchestration:install
|
58
|
+
rake orchestration:install project=myapp organization=myorg
|
56
59
|
```
|
57
60
|
|
58
|
-
You will be prompted to enter values for your _Docker_ organisation and repository name. For example, the _organisation_ and _repository_ for https://hub.docker.com/r/rubyorchestration/sampleapp are `rubyorchestration` and `sampleapp` respectively. If you are unsure of these values, they can be modified later by editing `.orchestration.yml` in the root of your project directory.
|
59
|
-
|
60
61
|
#### Configuration files
|
61
62
|
|
62
63
|
_Orchestration_ generates the following files where appropriate. Backups are created if a file is replaced.
|
@@ -17,10 +17,8 @@ module Orchestration
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def orchestration_configuration
|
20
|
-
|
21
|
-
@
|
22
|
-
@terminal.ask_setting('docker.repository', @env.default_app_name)
|
23
|
-
relpath = relative_path(path)
|
20
|
+
configure_orchestration_settings
|
21
|
+
relpath = relative_path(@env.orchestration_configuration_path)
|
24
22
|
return @terminal.write(:create, relpath) unless @settings.exist? || force?
|
25
23
|
return @terminal.write(:update, relpath) if @settings.dirty?
|
26
24
|
|
@@ -149,6 +147,19 @@ module Orchestration
|
|
149
147
|
healthcheck: DockerCompose::AppService.healthcheck
|
150
148
|
)
|
151
149
|
end
|
150
|
+
|
151
|
+
def configure_orchestration_settings
|
152
|
+
@terminal.ask_setting(
|
153
|
+
'docker.organization',
|
154
|
+
override: ENV.fetch('organization', nil)
|
155
|
+
)
|
156
|
+
|
157
|
+
@terminal.ask_setting(
|
158
|
+
'docker.repository',
|
159
|
+
default: @env.default_app_name,
|
160
|
+
override: ENV.fetch('project', nil)
|
161
|
+
)
|
162
|
+
end
|
152
163
|
end
|
153
164
|
# rubocop:enable Metrics/ClassLength
|
154
165
|
end
|
@@ -53,14 +53,14 @@ println=$(call print,$1'\n')
|
|
53
53
|
printraw=printf $1
|
54
54
|
stdout=${pwd}/log/orchestration.stdout.log
|
55
55
|
stderr=${pwd}/log/orchestration.stderr.log
|
56
|
-
log_path_length
|
56
|
+
log_path_length:=$(shell echo "${stdout}" | wc -c)
|
57
57
|
ifndef verbose
|
58
58
|
log_tee:= 2>&1 | tee -a ${stdout}
|
59
59
|
log:= >>${stdout} 2>>${stderr}
|
60
60
|
progress_point:=perl -e 'printf("[${magenta}busy${reset}] "); while( my $$line = <STDIN> ) { printf("."); select()->flush(); }'
|
61
61
|
log_progress:= > >(tee -ai ${stdout} >&1 | ${progress_point}) 2> >(tee -ai ${stderr} 2>&1 | ${progress_point})
|
62
62
|
endif
|
63
|
-
hr
|
63
|
+
hr:=$(call println,"$1$(shell head -c ${log_path_length} < /dev/zero | tr '\0' '=')${reset}")
|
64
64
|
managed_env_tag:=\# -|- ORCHESTRATION
|
65
65
|
standard_env_path:=${pwd}/.env
|
66
66
|
backup_env_path:=${pwd}/.env.orchestration.backup
|
@@ -190,7 +190,7 @@ else
|
|
190
190
|
compose_project_name = ${project_base}
|
191
191
|
endif
|
192
192
|
|
193
|
-
compose_base
|
193
|
+
compose_base:=env -i \
|
194
194
|
PATH=$(PATH) \
|
195
195
|
HOST_UID=$(shell id -u) \
|
196
196
|
DOCKER_ORGANIZATION="${docker_organization}" \
|
@@ -200,14 +200,14 @@ compose_base=env -i \
|
|
200
200
|
docker-compose \
|
201
201
|
-f ${orchestration_dir}/docker-compose.${env}.yml
|
202
202
|
|
203
|
-
git_branch
|
203
|
+
git_branch := $(if $(branch),$(branch),$(shell git rev-parse --abbrev-ref HEAD 2>/dev/null || echo no-branch))
|
204
204
|
ifndef dev
|
205
|
-
git_version
|
205
|
+
git_version := $(shell git rev-parse --short --verify ${git_branch} 2>/dev/null || echo no-version)
|
206
206
|
else
|
207
|
-
git_version
|
207
|
+
git_version := dev
|
208
208
|
endif
|
209
209
|
|
210
|
-
docker_image
|
210
|
+
docker_image:=${docker_organization}/${docker_repository}:${git_version}
|
211
211
|
|
212
212
|
compose=${compose_base}
|
213
213
|
compose_human=docker-compose -f ${orchestration_dir_name}/docker-compose.${env}.yml
|
@@ -315,7 +315,7 @@ db-console:
|
|
315
315
|
|
316
316
|
.PHONY: setup
|
317
317
|
ifneq (,$(wildcard config/database.yml))
|
318
|
-
setup: url
|
318
|
+
setup: url := $(shell ${rake} orchestration:db:url RAILS_ENV=${env} 2>/dev/null)
|
319
319
|
endif
|
320
320
|
setup: _log-notify
|
321
321
|
@$(call echo,Setting up ${env_human} environment)
|
@@ -39,8 +39,9 @@ module Orchestration
|
|
39
39
|
result
|
40
40
|
end
|
41
41
|
|
42
|
-
def ask_setting(setting, default
|
42
|
+
def ask_setting(setting, default: nil, override: nil)
|
43
43
|
return unless @settings.get(setting).nil?
|
44
|
+
return @settings.set(setting, override) unless override.nil?
|
44
45
|
|
45
46
|
write(:setup, t("settings.#{setting}.description"))
|
46
47
|
prompt = t("settings.#{setting}.prompt")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: orchestration
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bob Farrell
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: database_url
|