shipit-engine 0.23.1 → 0.24.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +5 -5
  2. data/app/assets/javascripts/merge_status.coffee +2 -2
  3. data/app/jobs/shipit/perform_task_job.rb +1 -1
  4. data/app/models/shipit/deploy_spec/rubygems_discovery.rb +1 -12
  5. data/app/models/shipit/stack.rb +1 -1
  6. data/config/secrets.development.example.yml +11 -16
  7. data/config/secrets.development.shopify.yml +1 -2
  8. data/lib/shipit.rb +8 -0
  9. data/lib/shipit/commands.rb +6 -1
  10. data/lib/shipit/stack_commands.rb +1 -1
  11. data/lib/shipit/task_commands.rb +14 -1
  12. data/lib/shipit/version.rb +1 -1
  13. data/lib/snippets/git-askpass +16 -0
  14. data/lib/snippets/release-gem +57 -0
  15. data/test/jobs/perform_task_job_test.rb +1 -1
  16. data/test/models/deploy_spec_test.rb +1 -1
  17. data/test/models/stacks_test.rb +1 -1
  18. data/test/unit/deploy_commands_test.rb +18 -4
  19. metadata +112 -147
  20. data/config/secrets.development.yml +0 -16
  21. data/test/dummy/data/stacks/byroot/junk/production/git/bar.txt +0 -2
  22. data/test/dummy/data/stacks/byroot/junk/production/git/bin/slow +0 -7
  23. data/test/dummy/data/stacks/byroot/junk/production/git/bin/timeout +0 -10
  24. data/test/dummy/data/stacks/byroot/junk/production/git/dkfdsf +0 -0
  25. data/test/dummy/data/stacks/byroot/junk/production/git/dskjfsd +0 -0
  26. data/test/dummy/data/stacks/byroot/junk/production/git/dslkjfjsdf +0 -0
  27. data/test/dummy/data/stacks/byroot/junk/production/git/plopfizz +0 -0
  28. data/test/dummy/data/stacks/byroot/junk/production/git/sd +0 -0
  29. data/test/dummy/data/stacks/byroot/junk/production/git/sdkfjsdf +0 -1
  30. data/test/dummy/data/stacks/byroot/junk/production/git/sdlfjsdfdsfj +0 -0
  31. data/test/dummy/data/stacks/byroot/junk/production/git/sdlkfjsdlkfjsdlkfjdsfsdfksdfjsldkfjsdlkfjsdf +0 -0
  32. data/test/dummy/data/stacks/byroot/junk/production/git/shipit.yml +0 -21
  33. data/test/dummy/data/stacks/byroot/junk/production/git/toto.txt +0 -2
  34. data/test/dummy/data/stacks/shopify/junk/production/git/README.md +0 -8
  35. data/test/dummy/data/stacks/shopify/junk/production/git/circle.yml +0 -4
  36. data/test/dummy/data/stacks/shopify/junk/production/git/shipit.yml +0 -4
  37. data/test/dummy/db/development.sqlite3 +0 -0
  38. data/test/dummy/db/test.sqlite3 +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: cd8a382d2166cd58c336b15c5d4efb3cd778458390c78e5fa11cd2317af31a17
4
- data.tar.gz: 96480eda48c88fadd1f6fc115aefaed7efd981d37ba6e8bccff4fff25af5925f
2
+ SHA1:
3
+ metadata.gz: ef8f9d577b2985bc9e82fd48bcb930c12261aef6
4
+ data.tar.gz: 4bf4282862504a06c96b5563750dc8d742e8c7ef
5
5
  SHA512:
6
- metadata.gz: 830e2fdae2a3a021ea0a753efcb63d25ebb441f5055f0a5c7cf874aad745cff3abf8b4f1b4617af692005dbd1bd253c6f302d781048315561437614bc83143d1
7
- data.tar.gz: c25f76891638c118583b862f801863d8ba2e61a703dd154b5c4ba2f7bb9843a67b69b7d521ddc06d9ff206b1ed380e6c6df65d8bad71c54dd3c274a5fe1aab99
6
+ metadata.gz: 15cc3525496d566cc27b67cefde82a3833f2bac1801a026b3de73c59a2208dc43c6b563b231da39d61eab6d1cf97c9f959515db5e873f7e16c2dfa5021732703
7
+ data.tar.gz: ec850e528fa5625ec20c3ebe81418381876e46ac2016ca55651284e3cabe58a641d29e304532290a096ca1e0237064308d1f8495537fc3ed278cf9e16a49c46a
@@ -43,10 +43,10 @@ class MergeStatusPoller
43
43
  @onPageChange()
44
44
 
45
45
  isMergeQueueEnabled: =>
46
- document.querySelector('.merge-status-container .js-details-container').hasAttribute('data-queue-enabled')
46
+ document.querySelector('.merge-status-container .js-details-container')?.hasAttribute('data-queue-enabled')
47
47
 
48
48
  mergeStatus: =>
49
- document.querySelector('.merge-status-container .js-details-container').getAttribute('data-merge-status') || 'unknown'
49
+ document.querySelector('.merge-status-container .js-details-container')?.getAttribute('data-merge-status') || 'unknown'
50
50
 
51
51
  class AjaxAction
52
52
  constructor: (@poller) ->
@@ -65,7 +65,7 @@ module Shipit
65
65
  @task.acquire_git_cache_lock do
66
66
  capture! @commands.fetch
67
67
  end
68
- capture! @commands.clone
68
+ capture_all! @commands.clone
69
69
  capture! @commands.checkout(@task.until_commit)
70
70
  end
71
71
 
@@ -9,17 +9,6 @@ module Shipit
9
9
  publish_gem if gem?
10
10
  end
11
11
 
12
- def discover_review_checklist
13
- discover_gem_checklist || super
14
- end
15
-
16
- def discover_gem_checklist
17
- if gem?
18
- [%(<strong>Don't forget to add a tag before deploying!</strong> You can do this with:
19
- git tag v<strong>x.y.z</strong> && git push --tags)]
20
- end
21
- end
22
-
23
12
  def gem?
24
13
  !!gemspec
25
14
  end
@@ -29,7 +18,7 @@ module Shipit
29
18
  end
30
19
 
31
20
  def publish_gem
32
- ["assert-gem-version-tag #{gemspec}", 'bundle exec rake release']
21
+ ["release-gem #{gemspec}"]
33
22
  end
34
23
  end
35
24
  end
@@ -292,7 +292,7 @@ module Shipit
292
292
  end
293
293
 
294
294
  def repo_git_url
295
- "git@#{Shipit.github.domain}:#{repo_owner}/#{repo_name}.git"
295
+ "https://#{Shipit.github.domain}/#{repo_owner}/#{repo_name}.git"
296
296
  end
297
297
 
298
298
  def base_path
@@ -1,19 +1,14 @@
1
- host: 'http://localhost:3000'
1
+ host: 'localhost:3000'
2
2
  redis_url: 'redis://127.0.0.1:6379/0'
3
3
 
4
- github_api:
5
- # Can be obtained there: https://github.com/settings/tokens/new
6
- # The required permissions are: `admin:org_hook`, `admin:repo_hook`, `read:org` and `repo`
7
- access_token:
8
-
9
- # Can be obtained there: https://github.com/settings/applications/new
4
+ # Can be obtained there: https://github.com/settings/apps
10
5
  # Set the "Authorization callback URL" as `<host>/github/auth/github/callback`
11
- github_oauth:
12
- id:
13
- secret:
14
- # teams: # Optional
15
-
16
- # To work on the kubernetes deploy script
17
- # env:
18
- # KUBECONFIG: # Path of the kubeconfig you want to use.
19
- # GOOGLE_APPLICATION_CREDENTIALS: # Used if your kube auth provider is gcp, in which case it should be path of the service account credentials you want to use. Alternatively, you can run `gcloud auth application-default login` (and remove this variable) to use your own google account locally.
6
+ github:
7
+ app_id:
8
+ installation_id:
9
+ webhook_secret: # nil
10
+ private_key:
11
+ oauth:
12
+ id:
13
+ secret:
14
+ teams: # Optional
@@ -1,4 +1,4 @@
1
- host: 'https://shipit-engine.myshopify.io'
1
+ host: 'shipit-engine.myshopify.io'
2
2
  redis_url: 'redis://shipit-engine.railgun:6379'
3
3
 
4
4
  # TODO: document creating a dev app
@@ -11,4 +11,3 @@ github:
11
11
  id:
12
12
  secret:
13
13
  teams:
14
- access_token:
@@ -169,6 +169,14 @@ module Shipit
169
169
  secrets.commands_inactivity_timeout || 5.minutes.to_i
170
170
  end
171
171
 
172
+ def committer_name
173
+ secrets.committer_name.presence || app_name
174
+ end
175
+
176
+ def committer_email
177
+ secrets.committer_email.presence || "#{app_name.underscore.dasherize}@#{host}"
178
+ end
179
+
172
180
  protected
173
181
 
174
182
  def revision_file
@@ -15,10 +15,15 @@ module Shipit
15
15
  Gem::Version.new($1)
16
16
  end
17
17
  end
18
+
18
19
  delegate :git_version, to: :class
19
20
 
20
21
  def env
21
- @env ||= Shipit.env
22
+ @env ||= Shipit.env.merge(
23
+ 'GITHUB_DOMAIN' => Shipit.github.domain,
24
+ 'GITHUB_TOKEN' => Shipit.github.token,
25
+ 'GIT_ASKPASS' => Shipit::Engine.root.join('lib', 'snippets', 'git-askpass').realpath.to_s,
26
+ )
22
27
  end
23
28
 
24
29
  def git(*args)
@@ -51,7 +51,7 @@ module Shipit
51
51
  end
52
52
 
53
53
  Dir.mktmpdir do |dir|
54
- git('clone', @stack.git_path, @stack.repo_name, chdir: dir).run!
54
+ git('clone', @stack.git_path, @stack.repo_name, '--origin', 'cache', chdir: dir).run!
55
55
  git_dir = File.join(dir, @stack.repo_name)
56
56
  git('checkout', commit.sha, chdir: git_dir).run! if commit
57
57
  yield Pathname.new(git_dir)
@@ -39,6 +39,8 @@ module Shipit
39
39
  'LAST_DEPLOYED_SHA' => @stack.last_deployed_commit.sha,
40
40
  'TASK_ID' => @task.id.to_s,
41
41
  'IGNORED_SAFETIES' => @task.ignored_safeties? ? '1' : '0',
42
+ 'GIT_COMMITTER_NAME' => @task.user&.name || Shipit.committer_name,
43
+ 'GIT_COMMITTER_EMAIL' => @task.user&.email || Shipit.committer_email,
42
44
  ).merge(deploy_spec.machine_env).merge(@task.env)
43
45
  end
44
46
 
@@ -47,7 +49,18 @@ module Shipit
47
49
  end
48
50
 
49
51
  def clone
50
- git('clone', '--local', @stack.git_path, @task.working_directory, chdir: @stack.deploys_path)
52
+ [
53
+ git(
54
+ 'clone',
55
+ '--local',
56
+ '--origin',
57
+ 'cache',
58
+ @stack.git_path,
59
+ @task.working_directory,
60
+ chdir: @stack.deploys_path,
61
+ ),
62
+ git('remote', 'add', 'origin', @stack.repo_git_url, chdir: @task.working_directory),
63
+ ]
51
64
  end
52
65
 
53
66
  def stack_commands
@@ -1,3 +1,3 @@
1
1
  module Shipit
2
- VERSION = '0.23.1'.freeze
2
+ VERSION = '0.24.0'.freeze
3
3
  end
@@ -0,0 +1,16 @@
1
+ #!/bin/sh
2
+
3
+ GITHUB_USER="${GITHUB_USER:-git}"
4
+ GITHUB_DOMAIN="${GITHUB_DOMAIN:-github.com}"
5
+
6
+ if [ "${1}" = "Username for 'https://${GITHUB_DOMAIN}': " ]; then
7
+ echo "${GITHUB_USER}"
8
+ exit 0
9
+ fi
10
+
11
+ if [ "${1}" = "Password for 'https://${GITHUB_USER}@${GITHUB_DOMAIN}': " ]; then
12
+ echo "${GITHUB_TOKEN}"
13
+ exit 0
14
+ fi
15
+
16
+ exit 1
@@ -0,0 +1,57 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'net/https'
4
+ require 'uri'
5
+
6
+ module RubygemsAPI
7
+ extend self
8
+
9
+ def published?(name, version)
10
+ uri = URI.parse("https://rubygems.org/api/v2/rubygems/#{name}/versions/#{version}.json")
11
+ Net::HTTP.get_response(uri).is_a?(Net::HTTPSuccess)
12
+ end
13
+ end
14
+
15
+ module Git
16
+ extend self
17
+
18
+ def tag_and_push(version)
19
+ if tag_exists?(version)
20
+ yield
21
+ else
22
+ tag(version) && yield && push_tags
23
+ end
24
+ end
25
+
26
+ def tag_exists?(version)
27
+ system('git', 'rev-parse', '--verify', "v#{version}^{commit}", out: File::NULL, err: File::NULL)
28
+ end
29
+
30
+ def tag(version)
31
+ puts "Running: git tag -m 'Version #{version}' v#{version}"
32
+ system('git', 'tag', '-m', "Version #{version}", "v#{version}")
33
+ end
34
+
35
+ def delete_tag(version)
36
+ puts "Running: git tag -d v#{version}"
37
+ system('git', 'tag', '-d', "v#{version}")
38
+ end
39
+
40
+ def push_tags
41
+ puts "Running: git push --tags"
42
+ system('git', 'push', '--tag')
43
+ end
44
+ end
45
+
46
+ spec_path, *release_command = ARGV
47
+ release_command = %w(bundle exec rake release) if release_command.empty?
48
+
49
+ spec = Gem::Specification.load(spec_path)
50
+ if RubygemsAPI.published?(spec.name, spec.version)
51
+ puts "#{spec.name} version #{spec.version} is already published."
52
+ exit 0
53
+ else
54
+ Git.tag_and_push(spec.version) do
55
+ system(*release_command)
56
+ end
57
+ end
@@ -15,7 +15,7 @@ module Shipit
15
15
  Commands.expects(:for).with(@deploy).returns(@commands)
16
16
 
17
17
  @commands.expects(:fetch).once
18
- @commands.expects(:clone).once
18
+ @commands.expects(:clone).returns([]).once
19
19
  @commands.expects(:checkout).with(@deploy.until_commit).once
20
20
  @commands.expects(:install_dependencies).returns([]).once
21
21
  @commands.expects(:perform).returns([]).once
@@ -261,7 +261,7 @@ module Shipit
261
261
  test '#publish_gem first check if version tag have been created, and then invoke bundler release task' do
262
262
  @spec.stubs(:gemspec).returns('/tmp/shipit.gemspec')
263
263
  refute @spec.capistrano?
264
- assert_equal ['assert-gem-version-tag /tmp/shipit.gemspec', 'bundle exec rake release'], @spec.deploy_steps
264
+ assert_equal ['release-gem /tmp/shipit.gemspec'], @spec.deploy_steps
265
265
  end
266
266
 
267
267
  test '#setup_dot_py gives the path of the repo setup.py if present' do
@@ -80,7 +80,7 @@ module Shipit
80
80
  end
81
81
 
82
82
  test "repo_git_url" do
83
- assert_equal "git@github.com:#{@stack.repo_owner}/#{@stack.repo_name}.git", @stack.repo_git_url
83
+ assert_equal "https://github.com/#{@stack.repo_owner}/#{@stack.repo_name}.git", @stack.repo_git_url
84
84
  end
85
85
 
86
86
  test "base_path" do
@@ -59,13 +59,16 @@ module Shipit
59
59
  end
60
60
 
61
61
  test "#clone clones the repository cache into the working directory" do
62
- command = @commands.clone
63
- assert_equal ['git', 'clone', '--local', @stack.git_path, @deploy.working_directory], command.args
62
+ commands = @commands.clone
63
+ assert_equal 2, commands.size
64
+ clone_args = ['git', 'clone', '--local', '--origin', 'cache', @stack.git_path, @deploy.working_directory]
65
+ assert_equal clone_args, commands.first.args
66
+ assert_equal ['git', 'remote', 'add', 'origin', @stack.repo_git_url], commands.second.args
64
67
  end
65
68
 
66
69
  test "#clone clones the repository cache from the deploys_path" do
67
- command = @commands.clone
68
- assert_equal @stack.deploys_path, command.chdir
70
+ commands = @commands.clone
71
+ assert_equal @stack.deploys_path, commands.first.chdir
69
72
  end
70
73
 
71
74
  test "#checkout checks out the deployed commit" do
@@ -194,6 +197,17 @@ module Shipit
194
197
  assert_equal '1', @commands.env['IGNORED_SAFETIES']
195
198
  end
196
199
 
200
+ test "GIT_COMMITTER_NAME and GIT_COMMITTER_EMAIL are exposed" do
201
+ assert_equal 'shipit@shipit.com', @commands.env['GIT_COMMITTER_EMAIL']
202
+ assert_equal 'Shipit', @commands.env['GIT_COMMITTER_NAME']
203
+
204
+ walrus = shipit_users(:walrus)
205
+ @deploy.update!(user: walrus)
206
+
207
+ assert_equal walrus.email, @commands.env['GIT_COMMITTER_EMAIL']
208
+ assert_equal walrus.name, @commands.env['GIT_COMMITTER_NAME']
209
+ end
210
+
197
211
  test "#clear_working_directory rm -rf the working directory" do
198
212
  FileUtils.expects(:rm_rf).with(@deploy.working_directory)
199
213
  @commands.clear_working_directory
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shipit-engine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.23.1
4
+ version: 0.24.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean Boussier
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-15 00:00:00.000000000 Z
11
+ date: 2018-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_model_serializers
@@ -629,7 +629,6 @@ files:
629
629
  - config/routes.rb
630
630
  - config/secrets.development.example.yml
631
631
  - config/secrets.development.shopify.yml
632
- - config/secrets.development.yml
633
632
  - db/migrate/20140226233935_create_baseline.rb
634
633
  - db/migrate/20150515190352_add_output_column_to_tasks.rb
635
634
  - db/migrate/20150518214944_add_ignore_ci_to_stack.rb
@@ -709,9 +708,11 @@ files:
709
708
  - lib/snippets/fetch-gem-version
710
709
  - lib/snippets/fetch-heroku-version
711
710
  - lib/snippets/generate-local-npmrc
711
+ - lib/snippets/git-askpass
712
712
  - lib/snippets/misconfigured-npm-publish-config
713
713
  - lib/snippets/publish-lerna-independent-packages
714
714
  - lib/snippets/push-to-heroku
715
+ - lib/snippets/release-gem
715
716
  - lib/tasks/cron.rake
716
717
  - lib/tasks/dev.rake
717
718
  - lib/tasks/teams.rake
@@ -769,26 +770,8 @@ files:
769
770
  - test/dummy/config/locales/en.yml
770
771
  - test/dummy/config/routes.rb
771
772
  - test/dummy/config/secrets.yml
772
- - test/dummy/data/stacks/byroot/junk/production/git/bar.txt
773
- - test/dummy/data/stacks/byroot/junk/production/git/bin/slow
774
- - test/dummy/data/stacks/byroot/junk/production/git/bin/timeout
775
- - test/dummy/data/stacks/byroot/junk/production/git/dkfdsf
776
- - test/dummy/data/stacks/byroot/junk/production/git/dskjfsd
777
- - test/dummy/data/stacks/byroot/junk/production/git/dslkjfjsdf
778
- - test/dummy/data/stacks/byroot/junk/production/git/plopfizz
779
- - test/dummy/data/stacks/byroot/junk/production/git/sd
780
- - test/dummy/data/stacks/byroot/junk/production/git/sdkfjsdf
781
- - test/dummy/data/stacks/byroot/junk/production/git/sdlfjsdfdsfj
782
- - test/dummy/data/stacks/byroot/junk/production/git/sdlkfjsdlkfjsdlkfjdsfsdfksdfjsldkfjsdlkfjsdf
783
- - test/dummy/data/stacks/byroot/junk/production/git/shipit.yml
784
- - test/dummy/data/stacks/byroot/junk/production/git/toto.txt
785
- - test/dummy/data/stacks/shopify/junk/production/git/README.md
786
- - test/dummy/data/stacks/shopify/junk/production/git/circle.yml
787
- - test/dummy/data/stacks/shopify/junk/production/git/shipit.yml
788
- - test/dummy/db/development.sqlite3
789
773
  - test/dummy/db/schema.rb
790
774
  - test/dummy/db/seeds.rb
791
- - test/dummy/db/test.sqlite3
792
775
  - test/dummy/public/404.html
793
776
  - test/dummy/public/422.html
794
777
  - test/dummy/public/500.html
@@ -894,161 +877,143 @@ required_rubygems_version: !ruby/object:Gem::Requirement
894
877
  version: '0'
895
878
  requirements: []
896
879
  rubyforge_project:
897
- rubygems_version: 2.7.6
880
+ rubygems_version: 2.6.14
898
881
  signing_key:
899
882
  specification_version: 4
900
883
  summary: Application deployment software
901
884
  test_files:
902
- - test/unit/environment_variables_test.rb
903
- - test/unit/shipit_test.rb
904
- - test/unit/command_test.rb
905
- - test/unit/commands_test.rb
906
- - test/unit/deploy_commands_test.rb
907
- - test/unit/github_app_test.rb
908
- - test/unit/github_url_helper_test.rb
909
- - test/unit/variable_definition_test.rb
910
- - test/unit/csv_serializer_test.rb
885
+ - test/fixtures/timeout
886
+ - test/fixtures/payloads/push_master.json
887
+ - test/fixtures/payloads/push_not_master.json
888
+ - test/fixtures/payloads/status_master.json
889
+ - test/fixtures/shipit/deliveries.yml
890
+ - test/fixtures/shipit/teams.yml
891
+ - test/fixtures/shipit/tasks.yml
892
+ - test/fixtures/shipit/commit_deployments.yml
893
+ - test/fixtures/shipit/output_chunks.yml
894
+ - test/fixtures/shipit/pull_requests.yml
895
+ - test/fixtures/shipit/hooks.yml
896
+ - test/fixtures/shipit/users.yml
897
+ - test/fixtures/shipit/stacks.yml
898
+ - test/fixtures/shipit/api_clients.yml
899
+ - test/fixtures/shipit/commit_deployment_statuses.yml
900
+ - test/fixtures/shipit/commits.yml
901
+ - test/fixtures/shipit/statuses.yml
902
+ - test/fixtures/shipit/github_hooks.yml
903
+ - test/fixtures/shipit/memberships.yml
911
904
  - test/test_command_integration.rb
912
- - test/dummy/app/controllers/application_controller.rb
913
- - test/dummy/app/views/layouts/application.html.erb
914
- - test/dummy/app/assets/javascripts/application.js
915
- - test/dummy/app/assets/stylesheets/application.css
916
- - test/dummy/app/helpers/application_helper.rb
917
- - test/dummy/bin/rake
905
+ - test/dummy/public/404.html
906
+ - test/dummy/public/favicon.ico
907
+ - test/dummy/public/422.html
908
+ - test/dummy/public/500.html
909
+ - test/dummy/db/schema.rb
910
+ - test/dummy/db/seeds.rb
911
+ - test/dummy/config.ru
918
912
  - test/dummy/bin/setup
913
+ - test/dummy/bin/rake
919
914
  - test/dummy/bin/bundle
920
915
  - test/dummy/bin/rails
916
+ - test/dummy/config/database.yml
921
917
  - test/dummy/config/secrets.yml
922
- - test/dummy/config/routes.rb
923
- - test/dummy/config/locales/en.yml
924
- - test/dummy/config/environments/production.rb
925
918
  - test/dummy/config/environments/development.rb
919
+ - test/dummy/config/environments/production.rb
926
920
  - test/dummy/config/environments/test.rb
927
- - test/dummy/config/database.postgresql.yml
928
- - test/dummy/config/environment.rb
929
- - test/dummy/config/application.rb
930
- - test/dummy/config/database.yml
931
- - test/dummy/config/boot.rb
932
- - test/dummy/config/database.mysql.yml
933
- - test/dummy/config/initializers/backtrace_silencers.rb
934
- - test/dummy/config/initializers/mime_types.rb
921
+ - test/dummy/config/initializers/cookies_serializer.rb
935
922
  - test/dummy/config/initializers/filter_parameter_logging.rb
936
- - test/dummy/config/initializers/session_store.rb
923
+ - test/dummy/config/initializers/backtrace_silencers.rb
937
924
  - test/dummy/config/initializers/wrap_parameters.rb
938
- - test/dummy/config/initializers/assets.rb
939
- - test/dummy/config/initializers/cookies_serializer.rb
940
- - test/dummy/config/initializers/0_load_development_secrets.rb
941
925
  - test/dummy/config/initializers/inflections.rb
942
- - test/dummy/config.ru
926
+ - test/dummy/config/initializers/0_load_development_secrets.rb
927
+ - test/dummy/config/initializers/assets.rb
928
+ - test/dummy/config/initializers/session_store.rb
929
+ - test/dummy/config/initializers/mime_types.rb
930
+ - test/dummy/config/boot.rb
931
+ - test/dummy/config/locales/en.yml
932
+ - test/dummy/config/environment.rb
933
+ - test/dummy/config/database.mysql.yml
934
+ - test/dummy/config/application.rb
935
+ - test/dummy/config/routes.rb
936
+ - test/dummy/config/database.postgresql.yml
937
+ - test/dummy/app/helpers/application_helper.rb
938
+ - test/dummy/app/views/layouts/application.html.erb
939
+ - test/dummy/app/controllers/application_controller.rb
940
+ - test/dummy/app/assets/stylesheets/application.css
941
+ - test/dummy/app/assets/javascripts/application.js
943
942
  - test/dummy/Rakefile
944
- - test/dummy/public/favicon.ico
945
- - test/dummy/public/422.html
946
- - test/dummy/public/500.html
947
- - test/dummy/public/404.html
948
- - test/dummy/db/schema.rb
949
- - test/dummy/db/seeds.rb
950
- - test/dummy/db/test.sqlite3
951
- - test/dummy/db/development.sqlite3
952
- - test/dummy/data/stacks/shopify/junk/production/git/README.md
953
- - test/dummy/data/stacks/shopify/junk/production/git/shipit.yml
954
- - test/dummy/data/stacks/shopify/junk/production/git/circle.yml
955
- - test/dummy/data/stacks/byroot/junk/production/git/sd
956
- - test/dummy/data/stacks/byroot/junk/production/git/sdkfjsdf
957
- - test/dummy/data/stacks/byroot/junk/production/git/dskjfsd
958
- - test/dummy/data/stacks/byroot/junk/production/git/bin/slow
959
- - test/dummy/data/stacks/byroot/junk/production/git/bin/timeout
960
- - test/dummy/data/stacks/byroot/junk/production/git/dslkjfjsdf
961
- - test/dummy/data/stacks/byroot/junk/production/git/plopfizz
962
- - test/dummy/data/stacks/byroot/junk/production/git/toto.txt
963
- - test/dummy/data/stacks/byroot/junk/production/git/shipit.yml
964
- - test/dummy/data/stacks/byroot/junk/production/git/bar.txt
965
- - test/dummy/data/stacks/byroot/junk/production/git/dkfdsf
966
- - test/dummy/data/stacks/byroot/junk/production/git/sdlfjsdfdsfj
967
- - test/dummy/data/stacks/byroot/junk/production/git/sdlkfjsdlkfjsdlkfjdsfsdfksdfjsldkfjsdlkfjsdf
943
+ - test/helpers/hooks_helper.rb
944
+ - test/helpers/links_helper.rb
945
+ - test/helpers/json_helper.rb
946
+ - test/helpers/payloads_helper.rb
947
+ - test/helpers/api_helper.rb
948
+ - test/helpers/fixture_aliases_helper.rb
949
+ - test/helpers/queries_helper.rb
950
+ - test/models/users_test.rb
968
951
  - test/models/rollbacks_test.rb
969
952
  - test/models/github_hook_test.rb
970
- - test/models/team_test.rb
971
- - test/models/membership_test.rb
972
- - test/models/commit_deployment_test.rb
973
- - test/models/commit_checks_test.rb
974
- - test/models/stacks_test.rb
975
- - test/models/delivery_test.rb
976
953
  - test/models/commit_deployment_status_test.rb
977
- - test/models/api_client_test.rb
978
- - test/models/tasks_test.rb
979
- - test/models/hook_test.rb
980
954
  - test/models/task_definitions_test.rb
981
- - test/models/status/group_test.rb
982
- - test/models/status/missing_test.rb
955
+ - test/models/team_test.rb
983
956
  - test/models/deploy_spec_test.rb
984
957
  - test/models/status_test.rb
985
- - test/models/output_chunk_test.rb
986
958
  - test/models/deploys_test.rb
959
+ - test/models/api_client_test.rb
960
+ - test/models/delivery_test.rb
961
+ - test/models/membership_test.rb
962
+ - test/models/hook_test.rb
987
963
  - test/models/pull_request_test.rb
988
- - test/models/undeployed_commits_test.rb
989
964
  - test/models/duration_test.rb
990
- - test/models/users_test.rb
991
965
  - test/models/commits_test.rb
992
- - test/fixtures/payloads/push_master.json
993
- - test/fixtures/payloads/status_master.json
994
- - test/fixtures/payloads/push_not_master.json
995
- - test/fixtures/timeout
996
- - test/fixtures/shipit/pull_requests.yml
997
- - test/fixtures/shipit/teams.yml
998
- - test/fixtures/shipit/github_hooks.yml
999
- - test/fixtures/shipit/users.yml
1000
- - test/fixtures/shipit/commit_deployment_statuses.yml
1001
- - test/fixtures/shipit/commits.yml
1002
- - test/fixtures/shipit/output_chunks.yml
1003
- - test/fixtures/shipit/tasks.yml
1004
- - test/fixtures/shipit/deliveries.yml
1005
- - test/fixtures/shipit/commit_deployments.yml
1006
- - test/fixtures/shipit/hooks.yml
1007
- - test/fixtures/shipit/stacks.yml
1008
- - test/fixtures/shipit/api_clients.yml
1009
- - test/fixtures/shipit/statuses.yml
1010
- - test/fixtures/shipit/memberships.yml
1011
- - test/test_helper.rb
1012
- - test/jobs/perform_task_job_test.rb
1013
- - test/jobs/fetch_deployed_revision_job_test.rb
1014
- - test/jobs/refresh_status_job_test.rb
1015
- - test/jobs/unique_job_test.rb
1016
- - test/jobs/purge_old_deliveries_job_test.rb
1017
- - test/jobs/cache_deploy_spec_job_test.rb
1018
- - test/jobs/deliver_hook_job_test.rb
1019
- - test/jobs/fetch_commit_stats_job_test.rb
1020
- - test/jobs/destroy_stack_job_test.rb
1021
- - test/jobs/emit_event_job_test.rb
1022
- - test/jobs/merge_pull_requests_job_test.rb
1023
- - test/jobs/refresh_github_user_job_test.rb
1024
- - test/jobs/chunk_rollup_job_test.rb
1025
- - test/jobs/github_sync_job_test.rb
1026
- - test/controllers/rollbacks_controller_test.rb
1027
- - test/controllers/tasks_controller_test.rb
1028
- - test/controllers/stacks_controller_test.rb
966
+ - test/models/commit_deployment_test.rb
967
+ - test/models/tasks_test.rb
968
+ - test/models/output_chunk_test.rb
969
+ - test/models/stacks_test.rb
970
+ - test/models/undeployed_commits_test.rb
971
+ - test/models/status/group_test.rb
972
+ - test/models/status/missing_test.rb
973
+ - test/models/commit_checks_test.rb
974
+ - test/controllers/status_controller_test.rb
975
+ - test/controllers/deploys_controller_test.rb
1029
976
  - test/controllers/commits_controller_test.rb
977
+ - test/controllers/pull_requests_controller_test.rb
978
+ - test/controllers/commit_checks_controller_test.rb
979
+ - test/controllers/tasks_controller_test.rb
980
+ - test/controllers/ccmenu_controller_test.rb
1030
981
  - test/controllers/github_authentication_controller_test.rb
982
+ - test/controllers/webhooks_controller_test.rb
1031
983
  - test/controllers/merge_status_controller_test.rb
1032
- - test/controllers/ccmenu_controller_test.rb
1033
- - test/controllers/commit_checks_controller_test.rb
1034
- - test/controllers/pull_requests_controller_test.rb
1035
- - test/controllers/api/outputs_controller_test.rb
984
+ - test/controllers/rollbacks_controller_test.rb
985
+ - test/controllers/api/deploys_controller_test.rb
986
+ - test/controllers/api/locks_controller_test.rb
987
+ - test/controllers/api/commits_controller_test.rb
988
+ - test/controllers/api/pull_requests_controller_test.rb
1036
989
  - test/controllers/api/hooks_controller_test.rb
1037
990
  - test/controllers/api/tasks_controller_test.rb
1038
- - test/controllers/api/stacks_controller_test.rb
1039
- - test/controllers/api/commits_controller_test.rb
1040
991
  - test/controllers/api/ccmenu_controller_test.rb
1041
- - test/controllers/api/pull_requests_controller_test.rb
992
+ - test/controllers/api/outputs_controller_test.rb
1042
993
  - test/controllers/api/base_controller_test.rb
1043
- - test/controllers/api/locks_controller_test.rb
1044
- - test/controllers/api/deploys_controller_test.rb
1045
- - test/controllers/webhooks_controller_test.rb
1046
- - test/controllers/status_controller_test.rb
1047
- - test/controllers/deploys_controller_test.rb
1048
- - test/helpers/json_helper.rb
1049
- - test/helpers/payloads_helper.rb
1050
- - test/helpers/links_helper.rb
1051
- - test/helpers/queries_helper.rb
1052
- - test/helpers/fixture_aliases_helper.rb
1053
- - test/helpers/api_helper.rb
1054
- - test/helpers/hooks_helper.rb
994
+ - test/controllers/api/stacks_controller_test.rb
995
+ - test/controllers/stacks_controller_test.rb
996
+ - test/test_helper.rb
997
+ - test/jobs/deliver_hook_job_test.rb
998
+ - test/jobs/purge_old_deliveries_job_test.rb
999
+ - test/jobs/unique_job_test.rb
1000
+ - test/jobs/refresh_status_job_test.rb
1001
+ - test/jobs/perform_task_job_test.rb
1002
+ - test/jobs/cache_deploy_spec_job_test.rb
1003
+ - test/jobs/refresh_github_user_job_test.rb
1004
+ - test/jobs/destroy_stack_job_test.rb
1005
+ - test/jobs/emit_event_job_test.rb
1006
+ - test/jobs/chunk_rollup_job_test.rb
1007
+ - test/jobs/fetch_commit_stats_job_test.rb
1008
+ - test/jobs/github_sync_job_test.rb
1009
+ - test/jobs/fetch_deployed_revision_job_test.rb
1010
+ - test/jobs/merge_pull_requests_job_test.rb
1011
+ - test/unit/variable_definition_test.rb
1012
+ - test/unit/github_app_test.rb
1013
+ - test/unit/commands_test.rb
1014
+ - test/unit/shipit_test.rb
1015
+ - test/unit/command_test.rb
1016
+ - test/unit/github_url_helper_test.rb
1017
+ - test/unit/deploy_commands_test.rb
1018
+ - test/unit/environment_variables_test.rb
1019
+ - test/unit/csv_serializer_test.rb
@@ -1,16 +0,0 @@
1
- host: 'http://shipit-engine.localhost'
2
- redis_url: 'redis://shipit-engine.railgun:6379'
3
-
4
- github:
5
- access_token: 4cc410d7a8fb04f6095076f519f7e0981d915136
6
-
7
- # If you want to test GitHub Authentication
8
- github_oauth:
9
- id: d2c8c96f8f226933186e
10
- secret: e4ca5135bb7052318e8cc4e48f296ee58ad39e61
11
- # teams:
12
-
13
- # To work on the beta bootstrap re-write
14
- # features:
15
- # - bootstrap
16
-
@@ -1,7 +0,0 @@
1
- #!/bin/bash
2
-
3
- for i in `seq 1 5`;
4
- do
5
- echo $i
6
- sleep 1
7
- done
@@ -1,10 +0,0 @@
1
- #!/bin/bash
2
-
3
-
4
- trap "{ echo 'got killed, exiting' ; exit 255; }" SIGINT SIGTERM
5
-
6
- echo "will sleep forever\n"
7
- while true; do
8
- sleep 20
9
- done
10
- echo done
@@ -1,21 +0,0 @@
1
- review:
2
- checklist:
3
- - Blah Blah
4
- checks:
5
- - echo 42
6
-
7
- deploy:
8
- override:
9
- - bin/slow
10
- - bin/timeout: {timeout: 5}
11
-
12
- rollback:
13
- override:
14
- - echo done
15
-
16
- tasks:
17
- restart:
18
- action: Restart application
19
- description: Trigger the restart of both app and jobs servers
20
- steps:
21
- - cap $ENVIRONMENT deploy:restart
@@ -1,8 +0,0 @@
1
- # junk
2
- For testing purposes. Feel free to delete if I forgot (byroot).
3
-
4
- PR 1
5
- PR 2
6
- PR 3
7
- PR 4
8
- PR 5
@@ -1,4 +0,0 @@
1
- test:
2
- override:
3
- - "true"
4
- - echo done
@@ -1,4 +0,0 @@
1
- deploy:
2
- override:
3
- - sleep 3
4
- - echo done
Binary file