travis_github_deployer 0.2.3 → 0.2.4

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a8f20a4c4ce37d11b2ef8b7424c5beb0640f9b10
4
+ data.tar.gz: 9edd37bab8fa9a5ac853a806c18f6794b4927329
5
+ SHA512:
6
+ metadata.gz: 4f74213d9dcda4b693b10abaa637a272e90566fc23616d91b383c777151062237d69a23b343535192862613d48673339677296296ab771025ff9ff9fd1b23aee
7
+ data.tar.gz: cc29b250a8817db828b3686e63d794b34e1b0907ce32c2e0fb00e3da463fa7a9f44ce8a6df2f390ab4c16316dcfe806c63544a1c5fcd8701fa82e0c60f77059a
data/README.md CHANGED
@@ -23,7 +23,7 @@ $ cd <name of your repository>
23
23
  $ curl -u <your username> -d '{"scopes":["public_repo"],"note":"Travis CI deployer"}' \
24
24
  https://api.github.com/authorizations
25
25
  $ travis encrypt 'GIT_NAME="<your name>" GIT_EMAIL=<your email> \
26
- GH_TOKEN=<your token>' --add
26
+ GIT_TOKEN=<your token>' --add
27
27
  ```
28
28
 
29
29
  ### How does this work?
@@ -39,14 +39,14 @@ This will get an authentication token. With it, Travis CI can commit under your
39
39
 
40
40
  ```bash
41
41
  $ travis encrypt 'GIT_NAME="<your name>" GIT_EMAIL=<your email> \
42
- GH_TOKEN=<your token>' --add
42
+ GIT_TOKEN=<your token>' --add
43
43
  ```
44
44
 
45
- This will take the taken and add it to a 'secure' section in your travis.yml. The Travis Github Deployer will grab it from that section and use it to push up the changes to your repository
45
+ This will take the token and add it to a 'secure' section in your travis.yml. The Travis Github Deployer will grab it from that section and use it to push up the changes to your repository
46
46
 
47
47
  ## Setting up the Travis Github Deployer
48
48
 
49
- The Travis Github Deployer uses one config file: ".travis_github_deployer"
49
+ The Travis Github Deployer uses one config file: ".travis_github_deployer.yml"
50
50
 
51
51
  A typical file looks like this:
52
52
 
@@ -45,6 +45,11 @@ class TravisGithubDeployer
45
45
  return
46
46
  end
47
47
 
48
+ if (ENV['GIT_NAME'].nil?)
49
+ puts "In fork and won't be deploying"
50
+ return
51
+ end
52
+
48
53
  load_configuration
49
54
  clone_destination_repository
50
55
  copy_files_in_destination_repository
@@ -124,7 +129,7 @@ class TravisGithubDeployer
124
129
  source = Pathname.new(source_location)
125
130
  destination = Pathname.new(destination_repository_dir)
126
131
  destination += destination_location
127
- FileUtils.copy(source, destination)
132
+ FileUtils.cp_r(source, destination)
128
133
  }
129
134
 
130
135
  end
@@ -1,4 +1,4 @@
1
1
 
2
2
  module TravisGithubDeployerVersion
3
- VERSION = "0.2.3"
3
+ VERSION = "0.2.4"
4
4
  end
@@ -6,13 +6,15 @@ describe "travis github deployer" do
6
6
  subject { TravisGithubDeployer.new}
7
7
 
8
8
  before(:each) do
9
- @git = mock
9
+ ENV::clear
10
+ @git = double
10
11
  GitCommandLine.should_receive(:new).and_return(@git)
11
12
  subject
12
13
  end
13
14
 
14
15
  it "can deploy to an destination repository" do
15
16
  ENV['TRAVIS_PULL_REQUEST']="false"
17
+ ENV['GIT_NAME']="Foo"
16
18
  subject.should_receive(:load_configuration)
17
19
  subject.should_receive(:clone_destination_repository)
18
20
  subject.should_receive(:change_current_directory_to_cloned_repository)
@@ -28,6 +30,13 @@ describe "travis github deployer" do
28
30
  subject.should_receive(:puts).with("In pull request and won't be deploying")
29
31
  subject.deploy
30
32
  end
33
+
34
+ it "will not deploy when run in a fork, e.g. when GIT_NAME isn't set" do
35
+ ENV['TRAVIS_PULL_REQUEST']="false"
36
+ subject.should_not_receive(:load_configuration)
37
+ subject.should_receive(:puts).with("In fork and won't be deploying")
38
+ subject.deploy
39
+ end
31
40
 
32
41
  context "Prepare repository for being able to commit" do
33
42
 
@@ -58,11 +67,6 @@ describe "travis github deployer" do
58
67
  subject.set_username_based_on_environment_variable
59
68
  end
60
69
 
61
- it "Should give an error message when the GIT_NAME isn't set" do
62
- ENV['GIT_NAME'] = nil
63
- expect {subject.set_username_based_on_environment_variable}.to raise_error(StandardError, "The GIT_NAME environment variable wasn't set.")
64
- end
65
-
66
70
  it "Should be able to set the password based on an environment variable" do
67
71
  ENV['GIT_EMAIL'] = "basv@bestcompanythatexists.com"
68
72
  @git.should_receive(:config_email).with("basv@bestcompanythatexists.com")
@@ -70,7 +74,7 @@ describe "travis github deployer" do
70
74
  end
71
75
 
72
76
  it "Should be able to write the github token based on an environment variable" do
73
- credential_file = mock
77
+ credential_file = double
74
78
  ENV['GIT_TOKEN'] = "Token"
75
79
 
76
80
  @git.should_receive(:config_credential_helper_store_file).with(".git/travis_deploy_credentials")
@@ -85,14 +89,14 @@ describe "travis github deployer" do
85
89
 
86
90
  it "should be able to copy a file from the root of the source repository to the root of the destination reportistory" do
87
91
  subject.should_receive(:files_to_deploy).and_return( { "sourcefile" => ""})
88
- FileUtils.should_receive(:copy).with(Pathname.new("sourcefile"), Pathname.new("travis_github_deployer_repository"))
92
+ FileUtils.should_receive(:cp_r).with(Pathname.new("sourcefile"), Pathname.new("travis_github_deployer_repository"))
89
93
  subject.copy_files_in_destination_repository
90
94
  end
91
95
 
92
96
  it "Should be able to copy multiple files" do
93
97
  subject.should_receive(:files_to_deploy).and_return({ "dir/onefile" => "destonefile", "twofile" => "dir/desttwofile"})
94
- FileUtils.should_receive(:copy).with(Pathname.new("dir/onefile"), Pathname.new("travis_github_deployer_repository/destonefile"))
95
- FileUtils.should_receive(:copy).with(Pathname.new("twofile"), Pathname.new("travis_github_deployer_repository/dir/desttwofile"))
98
+ FileUtils.should_receive(:cp_r).with(Pathname.new("dir/onefile"), Pathname.new("travis_github_deployer_repository/destonefile"))
99
+ FileUtils.should_receive(:cp_r).with(Pathname.new("twofile"), Pathname.new("travis_github_deployer_repository/dir/desttwofile"))
96
100
  subject.copy_files_in_destination_repository
97
101
  end
98
102
  end
metadata CHANGED
@@ -1,48 +1,51 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: travis_github_deployer
3
- version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.2.3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.4
6
5
  platform: ruby
7
- authors:
6
+ authors:
8
7
  - Bas Vodde
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
-
13
- date: 2013-07-19 00:00:00 Z
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
11
+ date: 2014-09-01 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
16
14
  name: rake
17
- prerelease: false
18
- requirement: &id001 !ruby/object:Gem::Requirement
19
- none: false
20
- requirements:
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
21
17
  - - ">="
22
- - !ruby/object:Gem::Version
23
- version: "0"
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
24
20
  type: :runtime
25
- version_requirements: *id001
26
- - !ruby/object:Gem::Dependency
27
- name: rspec
28
21
  prerelease: false
29
- requirement: &id002 !ruby/object:Gem::Requirement
30
- none: false
31
- requirements:
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
32
31
  - - ">="
33
- - !ruby/object:Gem::Version
32
+ - !ruby/object:Gem::Version
34
33
  version: 2.0.0
35
34
  type: :development
36
- version_requirements: *id002
37
- description: A Script and a library that help in deploying files from Travis CI builds to a Github Repository
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 2.0.0
41
+ description: A Script and a library that help in deploying files from Travis CI builds
42
+ to a Github Repository
38
43
  email: basv@odd-e.com
39
- executables:
44
+ executables:
40
45
  - travis_github_deployer
41
46
  extensions: []
42
-
43
47
  extra_rdoc_files: []
44
-
45
- files:
48
+ files:
46
49
  - README.md
47
50
  - Rakefile
48
51
  - bin/travis_github_deployer
@@ -54,32 +57,27 @@ files:
54
57
  - spec/travis_github_deployer_spec.rb
55
58
  - travis_github_deployer.gemfile
56
59
  homepage: https://github.com/basvodde/travis_github_deployer
57
- licenses:
60
+ licenses:
58
61
  - MIT
62
+ metadata: {}
59
63
  post_install_message:
60
64
  rdoc_options: []
61
-
62
- require_paths:
65
+ require_paths:
63
66
  - lib
64
- required_ruby_version: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
+ required_ruby_version: !ruby/object:Gem::Requirement
68
+ requirements:
67
69
  - - ">="
68
- - !ruby/object:Gem::Version
69
- version: "0"
70
- required_rubygems_version: !ruby/object:Gem::Requirement
71
- none: false
72
- requirements:
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
72
+ required_rubygems_version: !ruby/object:Gem::Requirement
73
+ requirements:
73
74
  - - ">="
74
- - !ruby/object:Gem::Version
75
- version: "0"
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
76
77
  requirements: []
77
-
78
78
  rubyforge_project:
79
- rubygems_version: 1.8.24
79
+ rubygems_version: 2.2.2
80
80
  signing_key:
81
- specification_version: 3
81
+ specification_version: 4
82
82
  summary: Script to deploy to github from Travis CI
83
83
  test_files: []
84
-
85
- has_rdoc: