winci 0.0.2 → 0.0.3
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.
- data/{README.txt → README.md} +30 -9
- data/examples/basic.rb +4 -3
- data/examples/extended.rb +4 -3
- data/examples/retrieving_info.rb +1 -0
- data/lib/winci.rb +0 -1
- data/lib/winci/version.rb +1 -1
- metadata +4 -4
data/{README.txt → README.md}
RENAMED
@@ -1,13 +1,12 @@
|
|
1
1
|
winci
|
2
2
|
======
|
3
3
|
|
4
|
-
[WinCI] Simplifies
|
4
|
+
[WinCI] Simplifies implementation of a full continuous deployment pipeline the Agile way with Jenkins/Hudson continuous integration server under Windows.
|
5
5
|
|
6
6
|
Install
|
7
7
|
=======
|
8
8
|
|
9
9
|
gem install winci
|
10
|
-
|
11
10
|
|
12
11
|
Introduction
|
13
12
|
=======
|
@@ -20,26 +19,48 @@ only then is he introduced to some configuration options.
|
|
20
19
|
|
21
20
|
WinCI is written in Ruby and uses Jenkins.rb gem to automate installation and interaction with Jenkins CI and also ruby-git gem to automate CI provisioning.
|
22
21
|
|
23
|
-
WinCI is intended to be
|
24
|
-
to setup Jenkins CI and enabling to create installation bundle used in provisioning process.
|
22
|
+
WinCI is intended to be used in conjunction with WinCI-server [https://github.com/ksob/winci-server] and WinCI-updater [https://github.com/ksob/winci-updater] projects.
|
25
23
|
|
24
|
+
WinCI-server provides functionality necessary to setup Jenkins CI and enabling to create installation bundle used in provisioning process and WinCI-updater plays huge role in the provisioning process.
|
26
25
|
|
27
26
|
Usage
|
28
27
|
=====
|
29
28
|
|
30
|
-
First
|
31
|
-
|
32
|
-
|
33
|
-
|
29
|
+
First setup WinCI-server [https://github.com/ksob/winci-server]
|
30
|
+
|
31
|
+
Then you can start using winci gem like this:
|
32
|
+
|
33
|
+
require 'rubygems'
|
34
|
+
require 'jenkins'
|
35
|
+
require 'winci'
|
36
|
+
|
37
|
+
project_name = 'my_project'
|
34
38
|
|
39
|
+
cfg = Jenkins::JobConfigBuilder.new(:ruby) do |c|
|
40
|
+
c.scm = "C:/repos/#{project_name}.git"
|
41
|
+
c.steps = [
|
42
|
+
# below makes sense when your Rakefile run rspec/cucumber by default
|
43
|
+
[:build_bat_step, "bundle exec rake"],
|
44
|
+
# this will send current code to production repo only after rspec/cucumber passed
|
45
|
+
[:build_bat_step, "git push c:/repos/production/#{project_name}.git HEAD:master"]
|
46
|
+
]
|
47
|
+
end
|
35
48
|
|
49
|
+
job = WinCI::Job.new project_name, cfg
|
50
|
+
|
51
|
+
# by default creates job on localhost:3010
|
52
|
+
puts job.create
|
53
|
+
|
54
|
+
For details take a look at examples directory.
|
55
|
+
Keep in mind that so far this project is mostly a wrapper for functionality contained in Jenkins.rb gem,
|
56
|
+
so if you would like to create nodes in Jenkins or create rake build steps then you should look at Jenkins.rb gem's docs or API file.
|
36
57
|
|
37
58
|
License
|
38
59
|
=======
|
39
60
|
|
40
61
|
(The MIT License)
|
41
62
|
|
42
|
-
Copyright (c) 2011 Kamil Sobieraj,
|
63
|
+
Copyright (c) 2011 Kamil Sobieraj, ksobej@gmail.com
|
43
64
|
|
44
65
|
Permission is hereby granted, free of charge, to any person obtaining
|
45
66
|
a copy of this software and associated documentation files (the
|
data/examples/basic.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'rubygems'
|
1
2
|
require 'jenkins'
|
2
3
|
require 'winci'
|
3
4
|
|
@@ -6,14 +7,14 @@ project_name = 'files'
|
|
6
7
|
cfg = Jenkins::JobConfigBuilder.new(:ruby) do |c|
|
7
8
|
c.scm = "C:/repos/#{project_name}.git"
|
8
9
|
c.steps = [
|
9
|
-
|
10
|
+
# below makes sense when your Rakefile run rspec/cucumber by default
|
10
11
|
[:build_bat_step, "bundle exec rake"],
|
11
12
|
# this will send current code to production repo only after rspec/cucumber passed
|
12
|
-
[:build_bat_step, "git push c:/repos/production
|
13
|
+
[:build_bat_step, "git push c:/repos/production/#{project_name}.git HEAD:master"]
|
13
14
|
]
|
14
15
|
end
|
15
16
|
|
16
17
|
job = WinCI::Job.new project_name, cfg
|
17
18
|
|
18
19
|
# by default creates job on localhost:3010
|
19
|
-
job.create
|
20
|
+
puts job.create
|
data/examples/extended.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'rubygems'
|
1
2
|
require 'jenkins'
|
2
3
|
require 'winci'
|
3
4
|
|
@@ -6,7 +7,7 @@ project_name = 'files'
|
|
6
7
|
cfg = Jenkins::JobConfigBuilder.new(:ruby) do |c|
|
7
8
|
c.scm = "C:/repos/#{project_name}.git"
|
8
9
|
c.steps = [
|
9
|
-
|
10
|
+
# in this way we can ensure that the PATH is the same as in production environment
|
10
11
|
[:build_shell_step, "export PATH=C:/Ruby/bin;\r\n" + "echo PATH is now : $PATH"],
|
11
12
|
# then we can run some installation script
|
12
13
|
[:build_bat_step, "ruby install.rb"],
|
@@ -15,10 +16,10 @@ cfg = Jenkins::JobConfigBuilder.new(:ruby) do |c|
|
|
15
16
|
# some adjustments to git before pushing
|
16
17
|
[:build_bat_step, "git config core.hidedotfiles false"],
|
17
18
|
# see basic.rb
|
18
|
-
[:build_bat_step, "git push c:/repos/production
|
19
|
+
[:build_bat_step, "git push c:/repos/production/#{project_name}.git HEAD:master"]
|
19
20
|
]
|
20
21
|
end
|
21
22
|
|
22
23
|
job = WinCI::Job.new project_name, cfg
|
23
24
|
|
24
|
-
job.create '192.168.
|
25
|
+
puts job.create '192.168.99.99', '3010'
|
data/examples/retrieving_info.rb
CHANGED
data/lib/winci.rb
CHANGED
data/lib/winci/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: winci
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kamil Sobieraj
|
@@ -48,7 +48,7 @@ files:
|
|
48
48
|
- Gemfile
|
49
49
|
- History.txt
|
50
50
|
- PostInstall.txt
|
51
|
-
- README.
|
51
|
+
- README.md
|
52
52
|
- Rakefile
|
53
53
|
- examples/basic.rb
|
54
54
|
- examples/extended.rb
|