conjur-debify 0.0.1.pre.47 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +0 -4
  3. data/LICENSE.txt +1 -1
  4. data/README.md +15 -210
  5. data/Rakefile +7 -14
  6. data/debify.gemspec +9 -18
  7. data/example/Gemfile +0 -8
  8. data/example/Gemfile.lock +0 -24
  9. data/example/test.sh +0 -1
  10. data/features/debify.feature +15 -0
  11. data/features/step_definitions/debify_steps.rb +0 -23
  12. data/features/support/env.rb +12 -5
  13. data/jenkins.sh +6 -0
  14. data/lib/conjur/debify/Dockerfile.fpm +4 -0
  15. data/lib/conjur/debify/version.rb +2 -2
  16. data/lib/conjur/debify.rb +154 -681
  17. data/lib/conjur/fpm/Dockerfile +5 -19
  18. data/lib/conjur/fpm/debify_utils.sh +8 -28
  19. data/lib/conjur/fpm/package.sh +23 -79
  20. metadata +36 -152
  21. data/.dockerignore +0 -1
  22. data/.rvmrc +0 -60
  23. data/CHANGELOG.md +0 -246
  24. data/CONTRIBUTING.md +0 -16
  25. data/Dockerfile +0 -33
  26. data/Jenkinsfile +0 -116
  27. data/VERSION +0 -1
  28. data/build.sh +0 -4
  29. data/ci/test.sh +0 -8
  30. data/distrib/conjur_creds.rb +0 -7
  31. data/distrib/docker-debify +0 -50
  32. data/distrib/entrypoint.sh +0 -19
  33. data/distrib/script +0 -1
  34. data/distrib/secrets +0 -1
  35. data/distrib/secrets.yml +0 -2
  36. data/example/docker-compose.yml +0 -11
  37. data/example/net-test.sh +0 -7
  38. data/features/detect_version.feature +0 -7
  39. data/features/package.feature +0 -23
  40. data/features/sandbox.feature +0 -23
  41. data/features/support/hooks.rb +0 -29
  42. data/features/support/world.rb +0 -10
  43. data/features/test.feature +0 -24
  44. data/image-tags +0 -23
  45. data/lib/conjur/debify/action/publish.rb +0 -136
  46. data/lib/conjur/debify/utils.rb +0 -16
  47. data/lib/conjur/publish/Dockerfile +0 -5
  48. data/publish-rubygem.sh +0 -10
  49. data/push-image.sh +0 -6
  50. data/secrets.yml +0 -3
  51. data/spec/action/publish_spec.rb +0 -54
  52. data/spec/data/Makefile +0 -5
  53. data/spec/data/test.tar +0 -0
  54. data/spec/debify_utils_spec.rb +0 -55
  55. data/spec/spec_helper.rb +0 -1
  56. data/spec/utils_spec.rb +0 -22
  57. data/tag-image.sh +0 -6
  58. data/test.sh +0 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 06dab6c897d375466d36efe5f929ab3efad7c98e50b34ce023d4d4fa35e44c50
4
- data.tar.gz: d72606df29b7d5befc9cdfe1554ae91f43bfe818324b95b94f9f3f33c8bbfccd
2
+ SHA1:
3
+ metadata.gz: 7d727bf95156d23c5fdcc395e95fc6308f459632
4
+ data.tar.gz: 5783389c1eb795cf8c6ee675ce2d2695867f795c
5
5
  SHA512:
6
- metadata.gz: 43019e747a5f4141e997bd2b07fa08d1affe3296f2fe242d0535fbde09c83860acfd996dad972c031b40d6c85031c0af47eee7e19b2dc426a852b4bb8fa2db55
7
- data.tar.gz: 6c2186d8efeb10ecc19816b70106741b9a6101736bbd9f365a7b15b18a355fb0e5db3ba3417d6c87eeb5be962165cc789da777dac4e0795471a225ab0cbb0a5a
6
+ metadata.gz: 536d4fe0a144a7b88f29fe9d8ac5c437bc934cd1a4db2b5cabbf030a6a54185b451e266b3a98bae203651bb9d27561ecb92d161690adc6477902dbe5a339fc51
7
+ data.tar.gz: 7b0c04adb847da5ab1ad69463ae5c8027059f9c765bf04896160d661e92b4f42e47fe16189e181e38c2d5a36520be9c25e67094e9c9edc9687e77512d7917d62
data/.gitignore CHANGED
@@ -1,4 +1,3 @@
1
- .idea
2
1
  features/reports
3
2
  /.bundle/
4
3
  /.yardoc
@@ -16,6 +15,3 @@ features/reports
16
15
  results.html
17
16
  mkmf.log
18
17
  *.deb
19
- *.rpm
20
- *.gem
21
- docker-debify
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2020 CyberArk Software Ltd. All rights reserved.
1
+ Copyright (c) 2016 Kevin Gilpin
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,90 +1,5 @@
1
1
  # Debify
2
2
 
3
- Debify is a tool used for building and testing DAP appliance packages.
4
- It is mainly used to package and publish debian packages that are consumed into the
5
- appliance image in its build stage. However, it also packages and publishes an
6
- RPM package whenever it does so for a debian.
7
-
8
- ## Installation
9
-
10
- There are two different ways of installing debify: as a gem, or as a Docker image.
11
-
12
- ### Installing the gem
13
- Add this line to your application's Gemfile:
14
-
15
- ```ruby
16
- gem 'conjur-debify'
17
- ```
18
-
19
- And then execute:
20
-
21
- ```sh-session
22
- $ bundle
23
- ```
24
-
25
- Or install it yourself as a ruby gem:
26
-
27
- ```sh-session
28
- $ gem install conjur-debify
29
- ```
30
-
31
- ### Installing the Docker image
32
- Pull the Docker image:
33
-
34
- ```sh-session
35
- $ VERSION=3.0.0
36
- $ docker pull registry.tld/conjurinc/debify:$VERSION
37
- ```
38
-
39
- Images are tagged with the version specified in [VERSION](./VERSION)
40
-
41
- Use the `config` subcommand to get a copy of the wrapper script and the secret definitions for publishing:
42
-
43
- ```sh-session
44
- $ docker run --rm debify:$VERSION config script > docker-debify
45
- $ chmod +x docker-debify
46
- # Optionally, if publishing a deb
47
- $ docker run --rm debify:$VERSION config secrets > publishing-secrets.yml
48
- ```
49
-
50
- Running `docker-debify` will then start a container configured to run debify:
51
-
52
- ```sh-session
53
- $ ./docker-debify help
54
- NAME
55
- debify - Utility commands for building and testing Conjur appliance Debian packages
56
-
57
- SYNOPSIS
58
- debify [global options] command [command options] [arguments...]
59
-
60
- VERSION
61
- 3.0.0
62
-
63
-
64
- GLOBAL OPTIONS
65
- --env=arg - Set an environment variable (e.g. TERM=xterm) when starting a container (may be used more than once, default:
66
- none)
67
- --help - Show this message
68
- --[no-]local-bundle - Mount local bundle to reuse gems from previous installation
69
- --version - Display the program version
70
-
71
- COMMANDS
72
- clean - Clean current working directory of non-Git-managed files
73
- config - Show the given configuration
74
- detect-version - Auto-detect and print the repository version
75
- help - Shows a list of commands or help for one command
76
- initconfig - Initialize the config file using current global options
77
- package - Build a debian package for a project
78
- publish - Publish a debian package to apt repository
79
- sandbox - Setup a development sandbox for a Conjur debian package in a Conjur appliance container
80
- test - Test a Conjur debian package in a Conjur appliance container
81
- ```
82
-
83
-
84
- Note that debify itself creates images and starts containers, so it
85
- needs access to the host's `docker.sock`. Additionally, it requires
86
- that it be started in root directory of the project being packaged.
87
-
88
3
  ## Build a package
89
4
 
90
5
  Builds a Conjur Debian package from a Ruby gem.
@@ -96,7 +11,7 @@ NAME
96
11
 
97
12
  SYNOPSIS
98
13
  debify [global options] package [command options] project_name -- <fpm-arguments>
99
- b
14
+
100
15
  DESCRIPTION
101
16
  The package is built using fpm (https://github.com/jordansissel/fpm).
102
17
 
@@ -114,7 +29,7 @@ DESCRIPTION
114
29
 
115
30
  COMMAND OPTIONS
116
31
  -d, --dir=arg - Set the current working directory (default: none)
117
- -v, --version=arg - Specify the deb version; by default, it's read from the VERSION file (default: none)
32
+ -v, --version=arg - Specify the deb version; by default, it's computed from the Git tag (default: none)
118
33
  ```
119
34
 
120
35
  ### Example usage
@@ -168,136 +83,26 @@ COMMAND OPTIONS
168
83
  $ debify test -i conjur-appliance-cuke-master --image-tag 4.6-dev --no-pull -d example example test.sh
169
84
  ```
170
85
 
171
- ## Publish a package
172
-
173
- ```
174
- $ debify help publish
175
- NAME
176
- publish - Publish a debian package to apt repository
177
-
178
- SYNOPSIS
179
- debify [global options] publish [command options] distribution project-name
180
-
181
- DESCRIPTION
182
- Publishes a deb created with `debify package` to our private apt repository.
183
-
184
- "distribution" should match the major/minor version of the Conjur appliance you want to install to.
185
-
186
- The package name is a required option. The package version can be specified as a CLI option, or it will be auto-detected from Git.
187
-
188
- --component should be 'stable' if run after package tests pass or 'testing' if the package is not yet ready for release. If you don't specify the component, it will be set to
189
- 'testing' unless the current git branch is 'master' or 'origin/master'. The git branch is first detected from the env var GIT_BRANCH, and then by checking `git rev-parse
190
- --abbrev-ref HEAD` (which won't give you the answer you want when detached).
191
-
192
- COMMAND OPTIONS
193
- -c, --component=arg - Maturity stage of the package, 'testing' or 'stable' (default: none)
194
- -d, --dir=arg - Set the current working directory (default: none)
195
- -v, --version=arg - Specify the deb package version; by default, it's computed automatically (default: none)
196
- ```
197
-
198
- ### Example usage
199
-
200
- You will need read permission for the `ci/artifactory/users/jenkins/username` and `ci/artifactory/users/jenkins/password` variables in order to run this command from your local machine.
201
-
202
- ```sh-session
203
- $ debify publish -c stable 0.0.1 example
204
- [Thread 0] Uploading artifact: https://conjurinc.artifactoryonline.com/conjurinc/debian-local/conjur-example_0.1.1-c9fd618_amd64.deb;deb.distribution=0.1.1;deb.component=possum;deb.architecture=amd64
205
- [Thread 0] Artifactory response: 201 Created
206
- Uploaded 1 artifacts to Artifactory.
207
- ```
208
-
209
- ## Create a development session in a Conjur appliance container
210
-
211
-
212
- ```
213
- $ debify help sandbox
214
- NAME
215
- sandbox - Setup a development sandbox for a Conjur debian package in a Conjur appliance container
216
-
217
- SYNOPSIS
218
- debify [global options] sandbox [command options]
219
-
220
- DESCRIPTION
221
- First, a Conjur appliance container is created and started. By default, the container image is
222
- registry.tld/conjur-appliance-cuke-master. An image tag MUST be supplied. This image
223
- is configured with all the CONJUR_ environment variables setup for the local environment (appliance URL,
224
- cert path, admin username and password, etc). The project source tree is
225
- also mounted into the container, at /src/<project-name>, where <project-name> is taken from the name of the
226
- current working directory.
227
-
228
- Once in the container, use "/opt/conjur/evoke/bin/dev-install" to install the development bundle of your project.
229
-
230
- COMMAND OPTIONS
231
- --bind=arg - Bind another source directory into the container. Use <src>:<dest>, where both are full paths. (default: none)
232
- -d, --dir=arg - Set the current working directory (default: none)
233
- -i, --image=arg - Image name (default: registry.tld/conjur-appliance-cuke-master)
234
- --[no-]pull - 'docker pull' the Conjur container image
235
- -t, --image-tag=arg - Image tag, e.g. 4.5-stable, 4.6-stable (default: none)
236
- ```
237
-
238
- ### Example usage
239
-
240
- ```sh-session
241
- authz $ debify sandbox -t $(cat VERSION_APPLIANCE)-stable
242
- ... much logging
243
- authz $ docker exec -it authz-sandbox bash
244
- root@7d4217655332:/src/authz# /opt/conjur/evoke/bin/dev-install authz
245
- ...
246
- root@7d4217655332:/src/authz# export RAILS_ENV=test
247
- root@7d4217655332:/src/authz# bundle exec rake db:migrate
248
- ```
249
-
250
- ## Usage with docker-compose
251
-
252
- As of v1.10.0, both the `test` and `sandbox` subcommands support the `--net` switch. This allows you to specify a network to which the Conjur appliance container should be attached.
253
-
254
- There are a variety of ways to make use of this feature. One
255
- possiblity is creating a network using `docker network create`, then
256
- attaching both the docker-compose services, as well as the Conjur
257
- appliance container created by debify, to it.
258
-
259
- As a (somewhat contrived) example, create a new docker network:
260
-
261
- ```sh-session
262
- $ docker network create testnet
263
- ```
264
-
265
- Use a docker-compose file like [example/docker-compose.yml](example/docker-compose.yml)
266
-
267
- ```yaml
268
- version: "2"
269
- networks:
270
- svcnet:
271
- external:
272
- name: testnet
273
- services:
274
- db:
275
- image: postgres
276
- container_name: mydb
277
- networks:
278
- - svcnet
279
- ```
86
+ ## Installation
280
87
 
281
- Bring up the db service:
88
+ Add this line to your application's Gemfile:
282
89
 
283
- ```sh-session
284
- debify $ cd example
285
- example $ docker-compose up -d
90
+ ```ruby
91
+ gem 'debify'
286
92
  ```
287
93
 
288
- Start a sandbox, see that it can resolve the hostname `mydb`:
94
+ And then execute:
289
95
 
290
- ```sh-session
96
+ $ bundle
291
97
 
292
- example $ debify sandbox -t 5.0-stable --net testnet
293
- example $ docker exec -it example-sandbox /bin/bash
294
- root@7d4217655332:/src/example# getent hosts mydb
295
- 172.19.0.2 mydb
296
- ```
98
+ Or install it yourself as:
297
99
 
100
+ $ gem install debify
298
101
 
299
102
  ## Contributing
300
103
 
301
- For instructions on how to get started and
302
- descriptions of our development workflows, please see our
303
- [contributing guide](CONTRIBUTING.md).
104
+ 1. Fork it ( https://github.com/[my-github-username]/debify/fork )
105
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
106
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
107
+ 4. Push to the branch (`git push origin my-new-feature`)
108
+ 5. Create a new Pull Request
data/Rakefile CHANGED
@@ -10,11 +10,6 @@ rescue LoadError
10
10
  false
11
11
  end
12
12
 
13
- def rspec?
14
- require 'rspec/core/rake_task'
15
- require 'ci/reporter/rake/rspec'
16
- end
17
-
18
13
  Rake::RDocTask.new do |rd|
19
14
  rd.main = "README.rdoc"
20
15
  rd.rdoc_files.include("README.rdoc","lib/**/*.rb","bin/**/*")
@@ -27,20 +22,22 @@ Gem::PackageTask.new(spec) do |pkg|
27
22
  end
28
23
 
29
24
  if cucumber?
30
- CUKE_RESULTS = 'features/reports'
25
+ CUKE_RESULTS = 'results.html'
26
+ CLEAN << CUKE_RESULTS
31
27
 
32
28
  desc 'Run features'
33
29
  Cucumber::Rake::Task.new(:features) do |t|
34
- opts = "features --format junit -o #{CUKE_RESULTS} --format pretty -x"
30
+ opts = "features --format html -o #{CUKE_RESULTS} --format progress -x"
35
31
  opts += " --tags #{ENV['TAGS']}" if ENV['TAGS']
36
- t.cucumber_opts = opts
32
+ t.cucumber_opts = opts
37
33
  t.fork = false
38
34
  end
39
35
 
40
36
  desc 'Run features tagged as work-in-progress (@wip)'
41
37
  Cucumber::Rake::Task.new('features:wip') do |t|
38
+ tag_opts = ' --tags ~@pending'
42
39
  tag_opts = ' --tags @wip'
43
- t.cucumber_opts = "features --format junit -o #{CUKE_RESULTS} --format pretty -x -s#{tag_opts}"
40
+ t.cucumber_opts = "features --format html -o #{CUKE_RESULTS} --format pretty -x -s#{tag_opts}"
44
41
  t.fork = false
45
42
  end
46
43
 
@@ -49,8 +46,4 @@ if cucumber?
49
46
  task :wip => 'features:wip'
50
47
  end
51
48
 
52
- if rspec?
53
- desc 'Run specs'
54
- RSpec::Core::RakeTask.new(:spec)
55
- task :spec => 'ci:setup:rspec'
56
- end
49
+ task :default => [:features]
data/debify.gemspec CHANGED
@@ -6,31 +6,22 @@ require 'conjur/debify/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "conjur-debify"
8
8
  spec.version = Conjur::Debify::VERSION
9
- spec.authors = ["CyberArk Software, Inc."]
10
- spec.email = ["conj_maintainers@cyberark.com"]
9
+ spec.authors = ["Kevin Gilpin"]
10
+ spec.email = ["kgilpin@conjur.net"]
11
11
  spec.summary = %q{Utility commands to build and package Conjur services as Debian packages}
12
12
  spec.homepage = "https://github.com/conjurinc/debify"
13
13
  spec.license = "MIT"
14
14
 
15
- spec.files = `git ls-files -z`.split("\x0").append("VERSION")
15
+ spec.files = `git ls-files -z`.split("\x0")
16
16
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
17
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
18
  spec.require_paths = ["lib"]
19
19
 
20
20
  spec.add_dependency "gli"
21
- spec.add_dependency "docker-api", "~> 2.0"
22
- spec.add_dependency "conjur-cli" , "~> 6"
23
- spec.add_dependency "conjur-api", "~> 5.3"
24
- spec.add_development_dependency "bundler", ">= 2.2.30"
25
- spec.add_development_dependency "fakefs", "~> 0"
26
- spec.add_development_dependency "rake", "~> 13.0"
27
-
28
- # Pin to cucumbe v2. cucumber v3 changes (breaks) the behavior of
29
- # unmatched capture groups with \(d+). In v3, the value of such a
30
- # group is 0 instead of nil, which breaks aruba's "I successfully
31
- # run...." steps.
32
- spec.add_development_dependency "cucumber", '~> 7.1'
33
- spec.add_development_dependency "aruba", "~> 2.0"
34
- spec.add_development_dependency 'rspec', '~> 3.10'
35
- spec.add_development_dependency 'ci_reporter_rspec', '~> 1.0'
21
+ spec.add_dependency "docker-api"
22
+
23
+ spec.add_development_dependency "bundler", "~> 1.7"
24
+ spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_development_dependency "cucumber"
26
+ spec.add_development_dependency "aruba"
36
27
  end
data/example/Gemfile CHANGED
@@ -1,9 +1 @@
1
1
  source 'https://rubygems.org'
2
-
3
- group :development do
4
- gem 'pry'
5
- end
6
-
7
- group :test do
8
- gem 'rspec'
9
- end
data/example/Gemfile.lock CHANGED
@@ -1,32 +1,8 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- coderay (1.1.2)
5
- diff-lcs (1.3)
6
- method_source (0.9.0)
7
- pry (0.11.3)
8
- coderay (~> 1.1.0)
9
- method_source (~> 0.9.0)
10
- rspec (3.7.0)
11
- rspec-core (~> 3.7.0)
12
- rspec-expectations (~> 3.7.0)
13
- rspec-mocks (~> 3.7.0)
14
- rspec-core (3.7.1)
15
- rspec-support (~> 3.7.0)
16
- rspec-expectations (3.7.0)
17
- diff-lcs (>= 1.2.0, < 2.0)
18
- rspec-support (~> 3.7.0)
19
- rspec-mocks (3.7.0)
20
- diff-lcs (>= 1.2.0, < 2.0)
21
- rspec-support (~> 3.7.0)
22
- rspec-support (3.7.1)
23
4
 
24
5
  PLATFORMS
25
6
  ruby
26
7
 
27
8
  DEPENDENCIES
28
- pry
29
- rspec
30
-
31
- BUNDLED WITH
32
- 2.1.4
data/example/test.sh CHANGED
@@ -1,4 +1,3 @@
1
1
  #!/bin/bash -ex
2
2
 
3
- ruby -rrspec -e 'puts RSpec::Version::STRING'
4
3
  echo Test succeeded
@@ -0,0 +1,15 @@
1
+ Feature: Packaging
2
+
3
+ @announce-output
4
+ Scenario: 'example' project can be packaged successfully
5
+ When I run `env DEBUG=true GLI_DEBUG=true debify package -d ../../example -v 0.0.1 example -- --post-install /distrib/postinstall.sh`
6
+ Then the exit status should be 0
7
+ And the stdout should contain exactly "conjur-example_0.0.1_amd64.deb"
8
+
9
+ @announce-output
10
+ Scenario: 'example' project can be tested successfully
11
+ Given I run `env DEBUG=true GLI_DEBUG=true debify package -d ../../example -v 0.0.1 example -- --post-install /distrib/postinstall.sh`
12
+ And the exit status should be 0
13
+ When I run `env DEBUG=true GLI_DEBUG=true debify test -t 4.6-stable -d ../../example --no-pull example test.sh`
14
+ Then the exit status should be 0
15
+ And the stderr should contain "Test succeeded"
@@ -1,29 +1,6 @@
1
-
2
1
  When /^I get help for "([^"]*)"$/ do |app_name|
3
2
  @app_name = app_name
4
3
  step %(I run `#{app_name} help`)
5
4
  end
6
5
 
7
6
  # Add more step definitions here
8
-
9
- When /^I start a container named "(.*?)"(?: on network "(.*?)")*$/ do |name, net_name|
10
- if net_name
11
- network = Docker::Network.create(net_name)
12
- networks << network
13
- end
14
-
15
- options = {
16
- 'name' => name,
17
- 'Image' => 'nginx'
18
- }
19
- options['HostConfig'] = { 'NetworkMode' => net_name } if net_name
20
-
21
- container = Docker::Container.create(options)
22
- container.start!
23
- containers << container
24
- end
25
-
26
- When /^I successfully start a sandbox for "(.*?)" with arguments "(.*?)"$/ do |project, args|
27
- step %Q{I successfully run `env DEBUG=true GLI_DEBUG=true debify sandbox -d ../../#{project} #{args}`}
28
- containers << Docker::Container.get("#{project}-sandbox")
29
- end
@@ -1,12 +1,19 @@
1
1
  require 'aruba/cucumber'
2
- require 'docker-api'
3
2
 
4
3
  ENV['PATH'] = "#{File.expand_path(File.dirname(__FILE__) + '/../../bin')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
5
4
  LIB_DIR = File.join(File.expand_path(File.dirname(__FILE__)),'..','..','lib')
6
5
 
7
6
  Aruba.configure do |config|
8
- config.exit_timeout = 1200
9
- # not a best practice from aruba's point of view
10
- # but the only solution I've found to have docker credentials context
11
- config.home_directory = ENV['HOME']
7
+ config.exit_timeout = 120
8
+ end
9
+
10
+ Before do
11
+ # Using "announce" causes massive warnings on 1.9.2
12
+ @puts = true
13
+ @original_rubylib = ENV['RUBYLIB']
14
+ ENV['RUBYLIB'] = LIB_DIR + File::PATH_SEPARATOR + ENV['RUBYLIB'].to_s
15
+ end
16
+
17
+ After do
18
+ ENV['RUBYLIB'] = @original_rubylib
12
19
  end
data/jenkins.sh ADDED
@@ -0,0 +1,6 @@
1
+ #!/bin/bash -ex
2
+
3
+ gem install -N bundler
4
+ bundle
5
+ rm -rf features/reports
6
+ cucumber --format pretty --format junit --out features/reports || true
@@ -7,6 +7,10 @@ WORKDIR /src/opt/conjur/project
7
7
  COPY Gemfile ./
8
8
  COPY Gemfile.lock ./
9
9
 
10
+ RUN bundle --deployment --without "test development"
11
+ RUN mkdir -p .bundle
12
+ RUN cp /usr/local/bundle/config .bundle/config
13
+
10
14
  COPY . .
11
15
  ADD debify.sh /
12
16
 
@@ -1,5 +1,5 @@
1
1
  module Conjur
2
2
  module Debify
3
- VERSION = File.read(File.expand_path('../../../VERSION', __dir__))
3
+ VERSION = "0.2.0"
4
4
  end
5
- end
5
+ end