omnibus 5.6.6 → 5.6.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,42 +0,0 @@
1
- Feature: omnibus build
2
- Background:
3
- Given I have an omnibus project named "hamlet"
4
-
5
- Scenario: When the project does not exist
6
- When I run `omnibus build bacon`
7
-
8
- Then the output should contain:
9
- """
10
- I could not find a project named `bacon' in any of the project locations:
11
- """
12
- And the exit status should not be 0
13
-
14
- # These scenarios don't work on appveyor due to no heat.exe/candle.exe/light.exe
15
- # Scenario: When the project has no software definitions
16
- # When I run `omnibus build hamlet`
17
- #
18
- # Then it should pass with "[Project: hamlet] I | Building version manifest"
19
- # And the file "output/version-manifest.json" should exist
20
- # And the file "output/version-manifest.txt" should exist
21
- # And the file "output/LICENSE" should exist
22
- # And the directory "output/LICENSES" should exist
23
- #
24
- # Scenario: When the project has a software definition
25
- # Given a file "config/software/ophelia.rb" with:
26
- # """
27
- # name "ophelia"
28
- # default_version "1.0.0"
29
- # build do
30
- # command "echo true > #{install_dir}/blah.txt"
31
- # end
32
- # """
33
- # And I append to "config/projects/hamlet.rb" with "dependency 'ophelia'"
34
- #
35
- # When I run `omnibus build hamlet`
36
- #
37
- # Then it should pass with "[Builder: ophelia] I | $ echo true"
38
- # And the file "output/blah.txt" should contain "true"
39
- # And the file "output/version-manifest.json" should exist
40
- # And the file "output/version-manifest.txt" should exist
41
- # And the file "output/LICENSE" should exist
42
- # And the directory "output/LICENSES" should exist
@@ -1,21 +0,0 @@
1
- Feature: omnibus clean
2
- Scenario: When a bad name is given
3
- * I run `omnibus clean hamlet`
4
- * the output should contain:
5
- """
6
- I could not find a project named `hamlet' in any of the project locations:
7
- """
8
- * the exit status should not be 0
9
-
10
- Scenario: When the --purge option is given
11
- * I have an omnibus project named "hamlet"
12
- * I successfully run `omnibus clean hamlet --purge`
13
- * the output should contain "remove output"
14
-
15
- Scenario: When no options are given
16
- * I have an omnibus project named "hamlet"
17
- * I successfully run `omnibus clean hamlet`
18
- * the output should not contain:
19
- """
20
- remove output
21
- """
@@ -1,16 +0,0 @@
1
- Feature: omnibus list
2
- Scenario: When there are Omnibus projects
3
- * I have an omnibus project named "hamlet"
4
- * I successfully run `omnibus list`
5
- * the output should contain:
6
- """
7
- Omnibus projects:
8
- * hamlet (1.0.0)
9
- """
10
-
11
- Scenario: When there are no Omnibus projects
12
- * I successfully run `omnibus list`
13
- * the output should contain:
14
- """
15
- There are no Omnibus projects!
16
- """
@@ -1,146 +0,0 @@
1
- Feature: omnibus manifest
2
- Background:
3
- Given I have an omnibus project named "hamlet"
4
-
5
- Scenario: When the project does not exist
6
- When I run `omnibus manifest bacon`
7
-
8
- Then the output should contain:
9
- """
10
- I could not find a project named `bacon' in any of the project locations:
11
- """
12
- And the exit status should not be 0
13
-
14
- Scenario: When the project has no software definitions
15
- When I run `omnibus manifest hamlet`
16
-
17
- Then it should pass with "[Project: hamlet] I | "
18
-
19
- And the output should match /^[Project: hamlet] I | \d\d\d\d-[0-1]\d-[0-3]\dT[0-2]\d:[0-6]\d:[0-6]\d(\+|\-)\d\d:\d\d | Building version manifest$/
20
-
21
- And the output should contain:
22
- """
23
- "software": {
24
-
25
- },
26
- """
27
-
28
- Scenario: When the project has a software definition
29
- Given a file "config/software/ophelia.rb" with:
30
- """
31
- name "ophelia"
32
- default_version "1.0.0"
33
- build do
34
- command "echo true > #{install_dir}/blah.txt"
35
- end
36
- """
37
- And I append to "config/projects/hamlet.rb" with "dependency 'ophelia'"
38
-
39
- When I run `omnibus manifest hamlet`
40
-
41
- Then it should pass with "[Project: hamlet] I | "
42
-
43
- And the output should match /^[Project: hamlet] I | \d\d\d\d-[0-1]\d-[0-3]\dT[0-2]\d:[0-6]\d:[0-6]\d(\+|\-)\d\d:\d\d | Building version manifest$/
44
- And the output should contain:
45
- """
46
- "software": {
47
- "ophelia": {
48
- "locked_version": "1.0.0",
49
- "locked_source": null,
50
- "source_type": "project_local",
51
- "described_version": "1.0.0",
52
- "license": "Unspecified"
53
- }
54
- },
55
- """
56
-
57
- Scenario: When the project has a software definition
58
- Given a file "config/software/ophelia.rb" with:
59
- """
60
- name "ophelia"
61
- default_version "1.0.0"
62
- build do
63
- command "echo true > #{install_dir}/blah.txt"
64
- end
65
- """
66
- And I append to "config/projects/hamlet.rb" with "dependency 'ophelia'"
67
-
68
- When I run `omnibus manifest hamlet`
69
-
70
- Then it should pass with "[Project: hamlet] I | "
71
-
72
- And the output should match /^[Project: hamlet] I | \d\d\d\d-[0-1]\d-[0-3]\dT[0-2]\d:[0-6]\d:[0-6]\d(\+|\-)\d\d:\d\d | Building version manifest$/
73
-
74
- And the output should contain:
75
- """
76
- "software": {
77
- "ophelia": {
78
- "locked_version": "1.0.0",
79
- "locked_source": null,
80
- "source_type": "project_local",
81
- "described_version": "1.0.0",
82
- "license": "Unspecified"
83
- }
84
- },
85
- """
86
- And the exit status should be 0
87
-
88
- Scenario: When the project has a software definition whose version depends on the OS
89
- Given a file "config/software/ophelia.rb" with:
90
- """
91
- name "ophelia"
92
- default_version (windows? ? "2.0.0" : "1.0.0")
93
- build do
94
- command "echo true > #{install_dir}/blah.txt"
95
- end
96
- """
97
- And I append to "config/projects/hamlet.rb" with "dependency 'ophelia'"
98
-
99
- When I run `omnibus manifest hamlet --os=linux --platform_family=debian --platform=ubuntu --platform_version=14.04`
100
-
101
- Then it should pass with "[Project: hamlet] I "
102
-
103
- And the output should match /^[Project: hamlet] I | \d\d\d\d-[0-1]\d-[0-3]\dT[0-2]\d:[0-6]\d:[0-6]\d(\+|\-)\d\d:\d\d | Building version manifest$/
104
-
105
- And the output should contain:
106
- """
107
- "software": {
108
- "ophelia": {
109
- "locked_version": "1.0.0",
110
- "locked_source": null,
111
- "source_type": "project_local",
112
- "described_version": "1.0.0",
113
- "license": "Unspecified"
114
- }
115
- },
116
- """
117
-
118
- Scenario: When the project has a software definition whose version depends on the OS
119
- Given a file "config/software/ophelia.rb" with:
120
- """
121
- name "ophelia"
122
- default_version (windows? ? "2.0.0" : "1.0.0")
123
- build do
124
- command "echo true > #{install_dir}/blah.txt"
125
- end
126
- """
127
- And I append to "config/projects/hamlet.rb" with "dependency 'ophelia'"
128
-
129
- When I run `omnibus manifest hamlet --os=windows --platform_family=windows --platform=windows --platform_version=2012r2`
130
-
131
- Then it should pass with "[Project: hamlet] I | "
132
-
133
- And the output should match /^[Project: hamlet] I | \d\d\d\d-[0-1]\d-[0-3]\dT[0-2]\d:[0-6]\d:[0-6]\d(\+|\-)\d\d:\d\d | Building version manifest$/
134
-
135
- And the output should contain:
136
- """
137
- "software": {
138
- "ophelia": {
139
- "locked_version": "2.0.0",
140
- "locked_source": null,
141
- "source_type": "project_local",
142
- "described_version": "2.0.0",
143
- "license": "Unspecified"
144
- }
145
- },
146
- """
@@ -1,8 +0,0 @@
1
- Feature: omnibus new
2
- Scenario: When the --path option is given
3
- * I successfully run `omnibus new hamlet --path nested/path`
4
- * a file named "nested/path/omnibus-hamlet/config/projects/hamlet.rb" should exist
5
-
6
- Scenario: When no options are given
7
- * I successfully run `omnibus new hamlet`
8
- * a file named "omnibus-hamlet/config/projects/hamlet.rb" should exist
@@ -1,15 +0,0 @@
1
- Feature: omnibus publish
2
- Scenario: Providing platform mappings file
3
- * I have a platform mappings file named "platform_mappings.json"
4
- * I run `omnibus publish artifactory fake * --platform-mappings platform_mappings.json`
5
- * the output should contain:
6
- """
7
- Publishing will be performed using provided platform mappings.
8
- """
9
-
10
- Scenario: When a user provides the deprecated `--version-manifest` flag
11
- * I run `omnibus publish artifactory fake * --version-manifest /fake/path/version-manifest.json`
12
- * the output should contain:
13
- """
14
- The `--version-manifest' option has been deprecated. Version manifest data is now part of the `*.metadata.json' file
15
- """
@@ -1,12 +0,0 @@
1
- Feature: omnibus version
2
- Scenario: When the -v flag is specified
3
- * I successfully run `omnibus -v`
4
- * the output should match /^Omnibus v(.+)$/
5
-
6
- Scenario: When the --version flag is specified
7
- * I successfully run `omnibus --version`
8
- * the output should match /^Omnibus v(.+)$/
9
-
10
- Scenario: When the version command is given
11
- * I successfully run `omnibus version`
12
- * the output should match /^Omnibus v(.+)$/
@@ -1,56 +0,0 @@
1
- require "aruba/api"
2
-
3
- Given(/^I have an omnibus project named "(.+)"$/) do |name|
4
- create_directory(name)
5
- cd(name)
6
-
7
- # Build target dir must be created
8
- abs_path = expand_path(".")
9
-
10
- # Single top level output dir
11
- create_directory("output")
12
-
13
- write_file("config/projects/#{name}.rb", <<-EOH.gsub(/^ {4}/, ""))
14
- name '#{name}'
15
- maintainer 'Mrs. Maintainer'
16
- homepage 'https://example.com'
17
- install_dir "#{abs_path}/output"
18
-
19
- build_version '1.0.0'
20
-
21
- exclude '\.git*'
22
- exclude 'bundler\/git'
23
-
24
- # This is necessary for Windows to pass.
25
- package :msi do
26
- upgrade_code "102FDF98-B9BF-4CE1-A716-2AB9CBCDA403"
27
- end
28
- EOH
29
-
30
- write_file("omnibus.rb", <<-EOH.gsub(/^ {4}/, ""))
31
- # Build configuration
32
- append_timestamp false
33
- cache_dir '#{abs_path}/local/omnibus/cache'
34
- git_cache_dir '#{abs_path}/local/omnibus/cache/git_cache'
35
- source_dir '#{abs_path}/local/omnibus/src'
36
- build_dir '#{abs_path}/local/omnibus/build'
37
- package_dir '#{abs_path}/local/omnibus/pkg'
38
- package_tmp '#{abs_path}/local/omnibus/pkg-tmp'
39
- EOH
40
- end
41
-
42
- Given(/^I debug$/) do
43
- require "pry"
44
- end
45
-
46
- Given(/^I have a platform mappings file named "(.+)"$/) do |name|
47
- write_file(name, <<-EOH.gsub(/^ {4}/, ""))
48
- {
49
- "ubuntu-10.04": [
50
- "ubuntu-10.04",
51
- "ubuntu-12.04",
52
- "ubuntu-14.04"
53
- ]
54
- }
55
- EOH
56
- end
@@ -1,15 +0,0 @@
1
- require "aruba"
2
- require "aruba/cucumber"
3
- require "aruba/in_process"
4
-
5
- require "omnibus/cli"
6
-
7
- Aruba.configure do |config|
8
- config.command_launcher = :in_process
9
- config.main_class = Omnibus::CLI::Runner
10
- end
11
-
12
- Before do
13
- # Reset anything that might have been cached in the Omnibus project
14
- Omnibus.reset!(true)
15
- end
@@ -1,10 +0,0 @@
1
- #
2
- # The .kitchen.local.yml takes preference and is compiled into the top-level
3
- # .kitchen.yml. Uncomment the following section to use VMWare Fusion instead of
4
- # the default Vagrant driver of VirtualBox.
5
- #
6
-
7
- # driver:
8
- # provider: vmware_fusion
9
- # customize:
10
- # memsize: 4096
@@ -1,44 +0,0 @@
1
- driver:
2
- name: vagrant
3
- forward_agent: yes
4
- customize:
5
- cpus: 2
6
- memory: 2048
7
- synced_folders:
8
- - ['.', '/home/vagrant/<%= config[:name] %>']
9
-
10
- provisioner:
11
- name: chef_zero
12
- require_chef_omnibus: 12.4.1
13
-
14
- platforms:
15
- - name: centos-7.1
16
- run_list: yum-epel::default
17
- - name: centos-6.6
18
- run_list: yum-epel::default
19
- - name: centos-5.11
20
- run_list: yum-epel::default
21
- - name: debian-7.8
22
- run_list: apt::default
23
- - name: debian-6.0.10
24
- run_list: apt::default
25
- - name: freebsd-10.1
26
- run_list: freebsd::portsnap
27
- - name: freebsd-9.3
28
- run_list:
29
- - freebsd::portsnap
30
- - freebsd::pkgng
31
- - name: ubuntu-14.04
32
- run_list: apt::default
33
- - name: ubuntu-12.04
34
- run_list: apt::default
35
-
36
- suites:
37
- - name: default
38
- run_list: omnibus::default
39
- attributes:
40
- omnibus:
41
- build_user: vagrant
42
- build_user_group: vagrant
43
- build_user_password: vagrant
44
- install_dir: /opt/<%= config[:name] %>