orchestration 0.6.13 → 0.6.14

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0eca537cffc7c1d04a9fee15b15d039e63f3ea64c29ca7384097ce5c3aeaedad
4
- data.tar.gz: 00c16b6c7a3d5cf3fa4fdf160a3664ce294d8fd52b4fb875eac0780e5013a9cf
3
+ metadata.gz: bcf0bada7cf3b3a134fecda49886fd0a79b8b03d1a8a02a759f60390d6fa8a58
4
+ data.tar.gz: e716bc24dab185c4547c3c6b020e66e34cf5ad9598fded73a071c0aaecb896d0
5
5
  SHA512:
6
- metadata.gz: c1b0bd62ed5ce027fa5b3fd6e71891df96070c7b874fcdf90e86b9f4d13f3364105b05a456052dc8bed836ea96149ada3ee6b7ef875333b9af0ae22d8426404f
7
- data.tar.gz: 16e33c0e81496d722b04c5f60d446aa8e506cb549f5f14c3d39d107eb74c03f79e95b76e8f9ed13f35188fcda58b465f6bfa7fd2fe355af0c0adde36bb4a8c22
6
+ metadata.gz: 3494b60cc10be3de1ecfb828bdd5e750d039516a43ee4f6d2d28fd5b1c277eb2afc8ec862860d5f48652429413d101fd09b1bcc9d23edbb953f6042de08a002a
7
+ data.tar.gz: c2d8d6b318c16d44bce372012d7c2400ff20d3e465b201d34e24fc3ba8402e7be0b346f0f9fc0ad5e97b616672cb4e2184c265618e60a7882b98e1c89d8ea5a6
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- orchestration (0.6.13)
4
+ orchestration (0.6.14)
5
5
  database_url (~> 0.1.2)
6
6
  dotenv-rails (~> 2.8)
7
7
  erubis (~> 2.7)
@@ -17,6 +17,8 @@ module Orchestration
17
17
  end
18
18
 
19
19
  def orchestration_configuration
20
+ return unless build?('.orchestration.yml')
21
+
20
22
  configure_orchestration_settings
21
23
  relpath = relative_path(@env.orchestration_configuration_path)
22
24
  return @terminal.write(:create, relpath) unless @settings.exist? || force?
@@ -26,11 +28,15 @@ module Orchestration
26
28
  end
27
29
 
28
30
  def application_makefile
31
+ return unless build?('Makefile')
32
+
29
33
  path = @env.root.join('Makefile')
30
34
  simple_copy('application.mk', path) unless File.exist?(path)
31
35
  end
32
36
 
33
37
  def dockerfile
38
+ return unless build?('Dockerfile')
39
+
34
40
  create_file(
35
41
  orchestration_dir.join('Dockerfile'),
36
42
  dockerfile_content,
@@ -39,6 +45,8 @@ module Orchestration
39
45
  end
40
46
 
41
47
  def entrypoint_sh
48
+ return unless build?('entrypoint.sh')
49
+
42
50
  content = template('entrypoint.sh')
43
51
  path = orchestration_dir.join('entrypoint.sh')
44
52
  create_file(path, content, overwrite: false)
@@ -46,12 +54,15 @@ module Orchestration
46
54
  end
47
55
 
48
56
  def docker_compose
57
+ return unless build?('docker-compose.yml')
58
+
49
59
  @docker_compose.docker_compose_test_yml
50
60
  @docker_compose.docker_compose_development_yml
51
61
  @docker_compose.docker_compose_deployment_yml
52
62
  end
53
63
 
54
64
  def puma
65
+ return unless build?('puma.rb')
55
66
  return nil unless @env.web_server == 'puma'
56
67
 
57
68
  content = template('puma.rb')
@@ -60,6 +71,7 @@ module Orchestration
60
71
  end
61
72
 
62
73
  def unicorn
74
+ return unless build?('unicorn.rb')
63
75
  return nil unless @env.web_server == 'unicorn'
64
76
 
65
77
  content = template('unicorn.rb')
@@ -70,6 +82,7 @@ module Orchestration
70
82
  end
71
83
 
72
84
  def database_yml
85
+ return unless build?('database.yml')
73
86
  return unless defined?(ActiveRecord)
74
87
 
75
88
  adapter = DockerCompose::ComposeConfiguration.database_adapter_name
@@ -79,22 +92,28 @@ module Orchestration
79
92
  end
80
93
 
81
94
  def mongoid_yml
95
+ return unless build?('mongoid.yml')
82
96
  return unless defined?(Mongoid)
83
97
 
84
98
  service_config('mongoid.yml', Services::Mongo::Configuration)
85
99
  end
86
100
 
87
101
  def rabbitmq_yml
102
+ return unless build?('rabbitmq.yml')
88
103
  return unless defined?(Bunny)
89
104
 
90
105
  service_config('rabbitmq.yml', Services::RabbitMQ::Configuration)
91
106
  end
92
107
 
93
108
  def env
109
+ return unless build?('.env')
110
+
94
111
  simple_copy('env', @env.root.join('.env'), overwrite: false)
95
112
  end
96
113
 
97
114
  def gitignore
115
+ return unless build?('.gitignore')
116
+
98
117
  path = @env.root.join('.gitignore')
99
118
  globs = %w[.build/ .deploy/ Gemfile Gemfile.lock docker-compose.local.yml]
100
119
  lines = %w[orchestration/.sidecar .env deploy.tar] + globs.map do |line|
@@ -106,6 +125,13 @@ module Orchestration
106
125
 
107
126
  private
108
127
 
128
+ def build?(filename)
129
+ return true unless ENV.key?('build')
130
+ return true if ENV.fetch('build') == filename
131
+
132
+ false
133
+ end
134
+
109
135
  def t(key)
110
136
  I18n.t("orchestration.#{key}")
111
137
  end
@@ -182,12 +182,18 @@ ifeq (,$(findstring deploy,$(MAKECMDGOALS)))
182
182
  ifeq (,${sidecar_suffix})
183
183
  $(warning Unable to generate project suffix; project name collisions may occur.)
184
184
  endif
185
- compose_project_name = ${project_base}_${sidecar_suffix}
185
+ compose_project_name_base = ${project_base}_${sidecar_suffix}
186
186
  else
187
- compose_project_name = ${project_base}
187
+ compose_project_name_base = ${project_base}
188
188
  endif
189
189
  else
190
- compose_project_name = ${project_base}
190
+ compose_project_name_base = ${project_base}
191
+ endif
192
+
193
+ ifdef COMPOSE_PROJECT_NAME_SUFFIX
194
+ compose_project_name = ${compose_project_name_base}_${COMPOSE_PROJECT_NAME_SUFFIX}
195
+ else
196
+ compose_project_name = ${compose_project_name_base}
191
197
  endif
192
198
 
193
199
  compose_base:=env -i \
@@ -196,6 +202,7 @@ compose_base:=env -i \
196
202
  DOCKER_ORGANIZATION="${docker_organization}" \
197
203
  DOCKER_REPOSITORY="${docker_repository}" \
198
204
  COMPOSE_PROJECT_NAME="${compose_project_name}" \
205
+ COMPOSE_PROJECT_NAME_SUFFIX="${COMPOSE_PROJECT_NAME_SUFFIX}" \
199
206
  ${sidecar_compose} \
200
207
  docker-compose \
201
208
  -f ${orchestration_dir}/docker-compose.${env}.yml
@@ -2,18 +2,24 @@ FROM ruby:<%= ruby_version %>
2
2
  ARG BUNDLE_BITBUCKET__ORG
3
3
  ARG BUNDLE_GITHUB__COM
4
4
  ARG GIT_COMMIT
5
- RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - \
6
- && apt-get update \
5
+ ENV NODE_MAJOR=20
6
+ RUN apt-get update \
7
7
  && DEBIAN_FRONTEND=noninteractive apt-get install -y \
8
- nodejs \
9
8
  gosu \
10
9
  sendmail \
10
+ ca-certificates \
11
+ curl \
12
+ gnupg \
13
+ && mkdir -p /etc/apt/keyrings \
14
+ && curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \
15
+ && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
16
+ && apt-get update \
17
+ && apt-get install nodejs \
11
18
  && rm -rf /var/lib/apt/lists/* \
12
19
  && gem install bundler \
13
20
  && mkdir /app<%if defined?(Webpacker) %> \
14
21
  && curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash \
15
22
  && . /root/.bashrc \
16
- && nvm install 14.16.0 \
17
23
  && npm config set user 0 \
18
24
  && npm config set unsafe-perm true \
19
25
  && npm install -g yarn<% end %>
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Orchestration
4
- VERSION = '0.6.13'
4
+ VERSION = '0.6.14'
5
5
  end
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.13
4
+ version: 0.6.14
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-10-12 00:00:00.000000000 Z
11
+ date: 2023-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: database_url