cide 0.5.0 → 0.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile.lock +2 -2
- data/README.md +3 -3
- data/cide.gemspec +2 -2
- data/docs/cide.yml.md +3 -3
- data/lib/cide/cli.rb +1 -2
- data/lib/cide/default_cide.yml +28 -4
- data/man/cide-build.1.md +3 -3
- data/man/cide-debug.1.md +2 -2
- data/man/cide-init.1.md +2 -2
- data/man/cide.1.md +2 -2
- data/man/cide.yml.1.md +3 -3
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 75c61ed91d6c0393c10dfe65926187de5aa3f8d4
|
4
|
+
data.tar.gz: a96c7379797f3708a8bfa56d5c40d189812d6870
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb4182ea7c26cdff0fc2e3811fbd6145af1396307e714a5d6298db7ed825e0b9c5c08edcbe03d728d7e8dad80c8f95c9dacec684f82b60cd5585e395007ae90c
|
7
|
+
data.tar.gz: 2816622e32e6fb799467f808d3ce2cf44f7a27603ae86729081f8a3d3f2c4339494234ba87f7a2741e94a007a78d7f2dd6f163ea271dd8c751df1f8ff0936e50
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -4,8 +4,8 @@
|
|
4
4
|
*cide* is a command-line tool that runs tests in an isolated (docker)
|
5
5
|
environment. It solves a problem where Jenkins workers need all the project's
|
6
6
|
dependencies (possibly conflicting) to be installed on the boxes. With *cide*
|
7
|
-
each run gets
|
8
|
-
at the end. Incidentally it
|
7
|
+
each run gets its own set of temporary docker containers which are scratched
|
8
|
+
at the end. Incidentally it is also possible to run the same `cide` command on
|
9
9
|
the developer machine and get the same build environment as on the CI. This
|
10
10
|
makes configuration iterations much shorter and allows to converge on a
|
11
11
|
working configuration faster.
|
@@ -17,7 +17,7 @@ Go to the target project's root and run `cide init` to populate a default
|
|
17
17
|
`cide.yml`. This file contains all the instruction to build your project with
|
18
18
|
cide and is [documented here](docs/cide.yml.md).
|
19
19
|
|
20
|
-
Once the file is
|
20
|
+
Once the file is configured run `cide` to execute the build. All the output
|
21
21
|
will appear in the console.
|
22
22
|
|
23
23
|
Example
|
data/cide.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = 'cide'
|
5
|
-
s.version = '0.
|
5
|
+
s.version = '0.6.0'
|
6
6
|
s.authors = ['zimbatm']
|
7
7
|
s.email = ['zimbatm@zimbatm.com']
|
8
8
|
s.summary = 'Isolated test runner with Docker'
|
@@ -11,7 +11,7 @@ cide is a command-line tool that runs tests in an isolated (docker)
|
|
11
11
|
environment. It allows to run the same command on the developer and CI
|
12
12
|
machines.
|
13
13
|
DESC
|
14
|
-
s.homepage = 'https://github.
|
14
|
+
s.homepage = 'https://zimbatm.github.io/cide'
|
15
15
|
s.license = 'MIT'
|
16
16
|
|
17
17
|
s.executables = ['cide']
|
data/docs/cide.yml.md
CHANGED
@@ -19,7 +19,7 @@ Root document
|
|
19
19
|
|
20
20
|
```yaml
|
21
21
|
---
|
22
|
-
# Image to base the build on
|
22
|
+
# Image to base the build on. Find images at http://index.docker.io/
|
23
23
|
#
|
24
24
|
# required
|
25
25
|
# type: string
|
@@ -108,7 +108,7 @@ ENV definition
|
|
108
108
|
|
109
109
|
An array or hash of environment variables to load
|
110
110
|
|
111
|
-
In the hash
|
111
|
+
In the hash form, the left-hand side is the key and the right-hand side the
|
112
112
|
value.
|
113
113
|
|
114
114
|
If a hash value is nil or the array form is used, the environment variables
|
@@ -142,7 +142,7 @@ name: 'mysql'
|
|
142
142
|
# Name of the image to pull and base the container on.
|
143
143
|
#
|
144
144
|
# type: string
|
145
|
-
|
145
|
+
from: 'redis:2.6'
|
146
146
|
|
147
147
|
# Environment variables for that container. See the ENV definition.
|
148
148
|
env: {}
|
data/lib/cide/cli.rb
CHANGED
@@ -13,7 +13,6 @@ module CIDE
|
|
13
13
|
class CLI < Thor
|
14
14
|
include CIDE::Docker
|
15
15
|
include Thor::Actions
|
16
|
-
add_runtime_options!
|
17
16
|
|
18
17
|
default_command 'build'
|
19
18
|
|
@@ -270,7 +269,7 @@ module CIDE
|
|
270
269
|
docker('rmi', '--force', *old_cide_images)
|
271
270
|
end
|
272
271
|
|
273
|
-
desc 'init', "Creates a blank #{CONFIG_FILES.first}
|
272
|
+
desc 'init', "Creates a blank #{CONFIG_FILES.first} in the project"
|
274
273
|
def init
|
275
274
|
puts "Creating #{CONFIG_FILES.first} with default values"
|
276
275
|
create_file CONFIG_FILES.first, File.read(DEFAULT_CIDEFILE)
|
data/lib/cide/default_cide.yml
CHANGED
@@ -1,9 +1,33 @@
|
|
1
1
|
---
|
2
|
-
# See
|
2
|
+
# See http://zimbatm.github.io/cide/#man/cide.yml.1 for more documentation
|
3
|
+
|
4
|
+
# Docker image to base the build on. Find images at http://index.docker.io/
|
3
5
|
from: ubuntu
|
4
|
-
|
5
|
-
|
6
|
-
|
6
|
+
|
7
|
+
# Commands run as root
|
8
|
+
as_root:
|
9
|
+
# add: []
|
10
|
+
# env: {}
|
11
|
+
# run: []
|
12
|
+
|
13
|
+
# Whenever to inject ssh keys into the project
|
7
14
|
use_ssh: false
|
15
|
+
|
16
|
+
# Commands run as "cide", used for caching build depedencies
|
17
|
+
before:
|
18
|
+
# add: []
|
19
|
+
# env: {}
|
20
|
+
# run: []
|
21
|
+
|
22
|
+
# Folder path who contains artifacts to export
|
8
23
|
export_dir:
|
24
|
+
|
25
|
+
# Linked-containers to run along the tests
|
26
|
+
links:
|
27
|
+
# - { from: 'redis:2.6', run: 'redis-server' }
|
28
|
+
|
29
|
+
# Sets additional environment variables
|
30
|
+
env: {}
|
31
|
+
|
32
|
+
# Main script to run
|
9
33
|
run: script/ci
|
data/man/cide-build.1.md
CHANGED
@@ -16,8 +16,8 @@ SYNOPSIS
|
|
16
16
|
DESCRIPTION
|
17
17
|
-----------
|
18
18
|
|
19
|
-
This is the default command that does most of the work and is invoked
|
20
|
-
the
|
19
|
+
This is the default command that does most of the work and is invoked most of
|
20
|
+
the time.
|
21
21
|
|
22
22
|
When invoked it will read the `cide.yml` file, generate a temporary
|
23
23
|
`Dockerfile.cide` file, build it with *docker build*, start all the linked
|
@@ -40,7 +40,7 @@ OPTIONS
|
|
40
40
|
|
41
41
|
`-o`, `--export-dir`=<*path*>
|
42
42
|
By default the export directory is the same as the one given in the
|
43
|
-
`export:` directive in the `cide.yml` file. It
|
43
|
+
`export:` directive in the `cide.yml` file. It is possible to change that
|
44
44
|
target folder outside of the container.
|
45
45
|
|
46
46
|
`-r`, `--run`=<*command*>
|
data/man/cide-debug.1.md
CHANGED
@@ -14,7 +14,7 @@ SYNOPSIS
|
|
14
14
|
DESCRIPTION
|
15
15
|
-----------
|
16
16
|
|
17
|
-
Sometimes it
|
17
|
+
Sometimes it is useful to run commands inside of the same environment where the
|
18
18
|
CI tests are run from. For example if an error doesn't reproduce on the
|
19
19
|
developer's machine.
|
20
20
|
|
@@ -33,7 +33,7 @@ OPTIONS
|
|
33
33
|
|
34
34
|
`--user`=<*username*>
|
35
35
|
Selects the user to run the container under. By default the `cide` user is
|
36
|
-
selected. In some situations it
|
36
|
+
selected. In some situations it is useful to run the container as `root`
|
37
37
|
(when poking at system dependencies)
|
38
38
|
|
39
39
|
SEE ALSO
|
data/man/cide-init.1.md
CHANGED
@@ -4,7 +4,7 @@ CIDE-INIT 1 "JUNE 2015" cide-init "Cide Manual"
|
|
4
4
|
NAME
|
5
5
|
----
|
6
6
|
|
7
|
-
cide-init - Creates a blank `cide.yml`
|
7
|
+
cide-init - Creates a blank `cide.yml` in the project
|
8
8
|
|
9
9
|
SYNOPSIS
|
10
10
|
--------
|
@@ -14,7 +14,7 @@ SYNOPSIS
|
|
14
14
|
DESCRIPTION
|
15
15
|
-----------
|
16
16
|
|
17
|
-
It
|
17
|
+
It is useful to get a basic skeleton when adding *cide* to a new project. If
|
18
18
|
the file already exists a confirmation is asked.
|
19
19
|
|
20
20
|
FILES
|
data/man/cide.1.md
CHANGED
@@ -20,7 +20,7 @@ DESCRIPTION
|
|
20
20
|
container (through Docker).
|
21
21
|
|
22
22
|
The default *cide build* command reads a `.cide.yml` file in the current
|
23
|
-
folder and takes
|
23
|
+
folder and takes its content to build a temporary Dockerfile that imports all
|
24
24
|
of the current directory's structure, builds an image with it and then runs a
|
25
25
|
container from it that executes the specified tests. See the cide.yml(1) man
|
26
26
|
page for the structure of that file.
|
@@ -65,7 +65,7 @@ COMMANDS
|
|
65
65
|
Shows the general help or the one for the given *command*
|
66
66
|
|
67
67
|
*cide init*
|
68
|
-
Creates a blank `cide.yml` file
|
68
|
+
Creates a blank `cide.yml` file in the project.
|
69
69
|
|
70
70
|
See cide-init(1)
|
71
71
|
|
data/man/cide.yml.1.md
CHANGED
@@ -19,7 +19,7 @@ Root document
|
|
19
19
|
|
20
20
|
```yaml
|
21
21
|
---
|
22
|
-
# Image to base the build on
|
22
|
+
# Image to base the build on. Find images at http://index.docker.io/
|
23
23
|
#
|
24
24
|
# required
|
25
25
|
# type: string
|
@@ -108,7 +108,7 @@ ENV definition
|
|
108
108
|
|
109
109
|
An array or hash of environment variables to load
|
110
110
|
|
111
|
-
In the hash
|
111
|
+
In the hash form, the left-hand side is the key and the right-hand side the
|
112
112
|
value.
|
113
113
|
|
114
114
|
If a hash value is nil or the array form is used, the environment variables
|
@@ -142,7 +142,7 @@ name: 'mysql'
|
|
142
142
|
# Name of the image to pull and base the container on.
|
143
143
|
#
|
144
144
|
# type: string
|
145
|
-
|
145
|
+
from: 'redis:2.6'
|
146
146
|
|
147
147
|
# Environment variables for that container. See the ENV definition.
|
148
148
|
env: {}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cide
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- zimbatm
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -154,7 +154,7 @@ files:
|
|
154
154
|
- man/cide.yml.1.md
|
155
155
|
- spec/build_config_loader_spec.rb
|
156
156
|
- spec/spec_helper.rb
|
157
|
-
homepage: https://github.
|
157
|
+
homepage: https://zimbatm.github.io/cide
|
158
158
|
licenses:
|
159
159
|
- MIT
|
160
160
|
metadata: {}
|
@@ -174,7 +174,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
174
174
|
version: '0'
|
175
175
|
requirements: []
|
176
176
|
rubyforge_project:
|
177
|
-
rubygems_version: 2.4.
|
177
|
+
rubygems_version: 2.4.8
|
178
178
|
signing_key:
|
179
179
|
specification_version: 4
|
180
180
|
summary: Isolated test runner with Docker
|