pushmi_pullyu 2.0.0 → 2.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8596ed87a287d7708b92c6a3538dcff1f976ddd1b2dc0171b30011bcfe62276b
4
- data.tar.gz: 9babcb9576246ee00e581056361731b324e27d02c49814af9b26346fbd269120
3
+ metadata.gz: d64e5d619eb9dee63c358167cd6778034eb72fa2686fbe95fa187cfdfe7525b3
4
+ data.tar.gz: 333805bd92b1d5e308949d583e46056ffb1aeac9900d9c23ca59f2b88a7a4d01
5
5
  SHA512:
6
- metadata.gz: 0d031eef30ea6828c6fac6c094ab040e914fce8094298249f56ebf2b44d8820c22fd3de6ff98abc546e482f278351b6838419d9b09a90cdd9be6b50576896afc
7
- data.tar.gz: 858a1d2f2a91a7ee9f9c0257391aa601316afa8fb07c09e883b817ec7b90879f5fdeda9eca34b375aeea5c1ed2c9b06b13c1212a03e30c538d2942a2e4976dca
6
+ metadata.gz: b8b162ca028ca37362d0bcd68737189f6af656c747bfc18a1593e35635bddf606d649e8d02299d092b1b569cab7e8a03950855fe2f7da4f5877a2714c99af8cc
7
+ data.tar.gz: 56c8653b1d868993e31607de7cd1d811752ff4de1ab63813dec2f745321f2b7d6a54107eb304f0f93191d6372bf22e55977512155edca08ee25ad96c23fc0099
data/.github/CODEOWNERS CHANGED
@@ -1,2 +1,2 @@
1
1
  # https://help.github.com/articles/about-codeowners/
2
- * @ConnorSheremeta @lagoan @mbarnett @murny @pgwillia @piyapongch
2
+ * @ConnorSheremeta @lagoan @henryzhang87 @pgwillia @piyapongch
@@ -0,0 +1,12 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: bundler
4
+ directory: "/"
5
+ schedule:
6
+ interval: daily
7
+ time: "10:00"
8
+ open-pull-requests-limit: 10
9
+ ignore:
10
+ - dependency-name: vcr
11
+ versions:
12
+ - "> 5.0"
@@ -25,7 +25,7 @@ jobs:
25
25
  run: bundle exec rubocop --parallel
26
26
  - name: Run Danger
27
27
  env:
28
- DANGER_GITHUB_API_TOKEN: ${{ secrets.DANGER_GITHUB_API_TOKEN }}
28
+ DANGER_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29
29
  run: bundle exec danger
30
30
  - name: Run tests
31
31
  run: bundle exec rake spec
data/.rubocop.yml CHANGED
@@ -13,6 +13,7 @@ AllCops:
13
13
  - 'Dangerfile'
14
14
  ExtraDetails: true
15
15
  TargetRubyVersion: 2.5
16
+ NewCops: enable
16
17
 
17
18
  # readability is Actually Good
18
19
  Layout/EmptyLinesAroundClassBody:
@@ -35,7 +36,7 @@ Metrics/ClassLength:
35
36
  Metrics/CyclomaticComplexity:
36
37
  Enabled: false
37
38
 
38
- Metrics/LineLength:
39
+ Layout/LineLength:
39
40
  Enabled: true
40
41
  Max: 120 # default is 80
41
42
 
@@ -96,14 +97,14 @@ RSpec/ExampleLength:
96
97
  RSpec/MultipleExpectations:
97
98
  Enabled: false
98
99
 
100
+ RSpec/MultipleMemoizedHelpers:
101
+ Enabled: false
102
+
99
103
  RSpec/DescribedClass:
100
104
  EnforcedStyle: explicit
101
105
 
102
- Lint/RaiseException:
103
- Enabled: true
104
-
105
- Lint/StructNewOverride:
106
- Enabled: true
106
+ Naming/VariableNumber:
107
+ Enabled: false
107
108
 
108
- RSpec/MultipleMemoizedHelpers:
109
- Enabled: false
109
+ Style/OpenStructUse:
110
+ Enabled: false
data/CHANGELOG.md CHANGED
@@ -8,9 +8,26 @@ and releases in PushmiPullyu adheres to [Semantic Versioning](https://semver.org
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ ## [2.0.3] - 2022-04-28
12
+
13
+ - Changed Danger token in Github Actions
14
+ - remove pg dependency
15
+ - unblock CI (rubocop and coveralls)
16
+ - Log to preservation_events.json as well in an easy to use json format.
17
+
18
+ ## [2.0.2] - 2021-11-22
19
+
20
+ - Fix authentication bug when using ssl
21
+ - bump rubocop and rubocop-rspec
22
+
23
+ ## [2.0.1] - 2021-02-02
24
+
25
+ - Fix dependency declaration for UUID gem
26
+
11
27
  ## [2.0.0] - 2020-12-14
12
28
 
13
29
  ### Removed
14
30
  - Data output for original_file information
15
31
 
32
+ -
16
33
  ## [1.0.6] - 2018-11-29
data/README.md CHANGED
@@ -6,7 +6,6 @@
6
6
 
7
7
  [![Gem Version](https://badge.fury.io/rb/pushmi_pullyu.svg)](https://rubygems.org/gems/pushmi_pullyu)
8
8
  [![Github Build Status](https://github.com/ualbertalib/pushmi_pullyu/workflows/CI/badge.svg)](https://github.com/ualbertalib/pushmi_pullyu/actions)
9
- [![Coverage Status](https://coveralls.io/repos/github/ualbertalib/pushmi_pullyu/badge.svg?branch=master)](https://coveralls.io/github/ualbertalib/pushmi_pullyu?branch=master)
10
9
 
11
10
  PushmiPullyu is a Ruby application, running behind the firewall that protects our Swift environment.
12
11
 
@@ -104,6 +103,12 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
104
103
 
105
104
  ## Testing
106
105
 
106
+ Pre-requisites:
107
+
108
+ Will need jupiter running locally and Openstack Swift running on port 8080.
109
+ - [Instructions for jupiter](https://github.com/ualbertalib/jupiter#docker)
110
+ - Use `docker-compose up -d` to start Swift (additional instructions in docker-compose.yml)
111
+
107
112
  To run the test suite:
108
113
 
109
114
  ```bash
@@ -0,0 +1,11 @@
1
+ services:
2
+ swift:
3
+ # useful if you need to re-run the tests/spec
4
+ # https://docs.openstack.org/ocata/cli-reference/swift.html
5
+ # manual steps to set environment variables and create container
6
+ # swift auth -v -U test:tester -K testing -A http://localhost:8080/auth/v1.0
7
+ # swift auth
8
+ # swift post ERA
9
+ image: openstackswift/saio
10
+ ports:
11
+ - '8080:8080'
@@ -21,9 +21,6 @@ minimum_age: 0
21
21
  redis:
22
22
  url: redis://localhost:6379
23
23
 
24
- database:
25
- url: postgresql://jupiter:mysecretpassword@127.0.0.1/jupiter_development
26
-
27
24
  #parameters project_name and project_domain_name are required only for keystone v3 authentication
28
25
  swift:
29
26
  tenant: tester
@@ -80,7 +80,8 @@ class PushmiPullyu::AIP::Downloader
80
80
  def authenticate_http_calls
81
81
  @uri = URI.parse(PushmiPullyu.options[:jupiter][:jupiter_url])
82
82
  @http = Net::HTTP.new(@uri.host, @uri.port)
83
- request = Net::HTTP::Post.new(@uri.request_uri + 'auth/system')
83
+ @http.use_ssl = true if @uri.instance_of? URI::HTTPS
84
+ request = Net::HTTP::Post.new("#{@uri.request_uri}auth/system")
84
85
  request.set_form_data(
85
86
  email: PushmiPullyu.options[:jupiter][:user],
86
87
  api_key: PushmiPullyu.options[:jupiter][:api_key]
@@ -102,9 +103,7 @@ class PushmiPullyu::AIP::Downloader
102
103
 
103
104
  response = @http.request(request)
104
105
  is_success = if response.is_a?(Net::HTTPSuccess)
105
- File.open(local, 'wb') do |file|
106
- file.write(response.body)
107
- end
106
+ File.binwrite(local, response.body)
108
107
  # Response was a success and the file was saved to local
109
108
  File.exist? local
110
109
  end
@@ -89,7 +89,7 @@ class PushmiPullyu::CLI
89
89
 
90
90
  def parse_config(config_file)
91
91
  if File.exist?(config_file)
92
- YAML.safe_load(ERB.new(IO.read(config_file)).result).deep_symbolize_keys || {}
92
+ YAML.safe_load(ERB.new(File.read(config_file)).result).deep_symbolize_keys || {}
93
93
  else
94
94
  {}
95
95
  end
@@ -249,12 +249,12 @@ class PushmiPullyu::CLI
249
249
  # On first call of shutdown, this will gracefully close the main run loop
250
250
  # which let's the program exit itself. Calling shutdown again will force shutdown the program
251
251
  def shutdown
252
- if !PushmiPullyu.server_running?
253
- exit!(1)
254
- else
252
+ if PushmiPullyu.server_running?
255
253
  # using stderr instead of logger as it uses an underlying mutex which is not allowed inside trap contexts.
256
254
  warn 'Exiting... Interrupt again to force quit.'
257
255
  PushmiPullyu.server_running = false
256
+ else
257
+ exit!(1)
258
258
  end
259
259
  end
260
260
 
@@ -21,7 +21,7 @@ module PushmiPullyu::Logging
21
21
 
22
22
  attr_writer :logger
23
23
 
24
- def initialize_logger(log_target = STDOUT)
24
+ def initialize_logger(log_target = $stdout)
25
25
  @logger = Logger.new(log_target)
26
26
  @logger.level = Logger::INFO
27
27
  @logger
@@ -45,13 +45,14 @@ module PushmiPullyu::Logging
45
45
 
46
46
  def log_preservation_event(deposited_file, aip_directory)
47
47
  preservation_logger = Logger.new("#{PushmiPullyu.options[:logdir]}/preservation_events.log")
48
+ preservation_json_logger = Logger.new("#{PushmiPullyu.options[:logdir]}/preservation_events.json")
48
49
 
49
50
  message = "#{deposited_file.name} was successfully deposited into Swift Storage!\n"\
50
- "Here are the details of this preservation event:\n"\
51
- "\tUUID: '#{deposited_file.name}'\n"\
52
- "\tTimestamp of Completion: '#{deposited_file.last_modified}'\n"\
53
- "\tAIP Checksum: '#{deposited_file.etag}'\n"\
54
- "\tMetadata: #{deposited_file.metadata}\n"\
51
+ "Here are the details of this preservation event:\n"\
52
+ "\tUUID: '#{deposited_file.name}'\n"\
53
+ "\tTimestamp of Completion: '#{deposited_file.last_modified}'\n"\
54
+ "\tAIP Checksum: '#{deposited_file.etag}'\n"\
55
+ "\tMetadata: #{deposited_file.metadata}\n"\
55
56
 
56
57
  file_details = file_log_details(aip_directory)
57
58
 
@@ -72,6 +73,65 @@ module PushmiPullyu::Logging
72
73
  preservation_logger.info(message)
73
74
 
74
75
  preservation_logger.close
76
+
77
+ message_json_str = preservation_event_to_json(deposited_file, aip_directory)
78
+ preservation_json_logger.info("#{message_json_str},")
79
+ preservation_json_logger.close
80
+ end
81
+
82
+ ###
83
+ # Provides an alternative logging method in json format for the convenience of
84
+ # parsing in the process of auditing against OpenStack Swift preservation.
85
+ #
86
+ # output format:
87
+ # I, [2022-04-06T11:07:21.983875 #20791] INFO -- : \
88
+ # {
89
+ # "do_uuid": "83b5d21f-a60a-43ba-945a-f03deec64a1d",
90
+ # "aip_deposited_at": "Thu, 07 Apr 2022 16:37:00 GMT",
91
+ # "aip_md5sum": "fe5832a510799b04c1c503e46dc3b589",
92
+ # "aip_sha256": "",
93
+ # "aip_metadata": "{\"project-id\":\"83b5d21f-a60a-43ba-945a-f03deec64a1d\",
94
+ # \"aip-version\":\"1.0\",
95
+ # \"project\":\"ERA\",
96
+ # \"promise\":\"bronze\"}",
97
+ # "aip_file_details": [
98
+ # {
99
+ # "fileset_uuid": "b2c6ac0f-f2ed-489e-bbae-bd26465207aa",
100
+ # "file_name": "Spallacci_Amanda_202103_PhD.pdf",
101
+ # "file_type": "pdf",
102
+ # "file_size": "2051363"
103
+ # }
104
+ # ]
105
+ # }
106
+ #
107
+ # note:
108
+ # to parse, the prefix "I, ... INFO --:" in each line needs to be
109
+ # stripped using a bash command such as "sed"
110
+ def preservation_event_to_json(deposited_file, aip_directory)
111
+ message = {}
112
+
113
+ message['do_uuid'] = deposited_file.name.to_s
114
+ message['aip_deposited_at'] = deposited_file.last_modified.to_s
115
+ message['aip_md5sum'] = deposited_file.etag.to_s
116
+ message['aip_sha256'] = ''
117
+ message['aip_metadata'] = deposited_file.metadata.to_json.to_s
118
+
119
+ file_details = file_log_details(aip_directory)
120
+
121
+ tmp_details = []
122
+ if file_details.present?
123
+ file_details.each do |file_detail|
124
+ tmp_hash = {}
125
+ tmp_hash['fileset_uuid'] = file_detail[:fileset_name].to_s
126
+ tmp_hash['file_name'] = file_detail[:file_name].to_s
127
+ tmp_hash['file_type'] = file_detail[:file_extension].to_s
128
+ tmp_hash['file_size'] = file_detail[:file_size].to_s
129
+ tmp_details << tmp_hash
130
+ end
131
+ end
132
+
133
+ message['aip_file_details'] = tmp_details
134
+ message.to_json
75
135
  end
76
136
 
77
137
  def reopen
@@ -1,3 +1,3 @@
1
1
  module PushmiPullyu
2
- VERSION = '2.0.0'.freeze
2
+ VERSION = '2.0.3'.freeze
3
3
  end
data/lib/pushmi_pullyu.rb CHANGED
@@ -40,18 +40,14 @@ module PushmiPullyu
40
40
  },
41
41
  rollbar: {
42
42
  },
43
- database: {
44
- encoding: 'utf8',
45
- pool: ENV['RAILS_MAX_THREADS'] || 5,
46
- url: ENV['DATABASE_URL'] || ENV['JUPITER_DATABASE_URL'] || 'postgresql://jupiter:mysecretpassword@127.0.0.1',
47
- database: 'jupiter_development'
48
- },
43
+ # rubocop disable: Style/FetchEnvVar
49
44
  jupiter: {
50
- user: ENV['JUPITER_USER'],
51
- api_key: ENV['JUPITER_API_KEY'],
52
- jupiter_url: ENV['JUPITER_URL'] || 'http://localhost:3000/',
53
- aip_api_path: ENV['JUPITER_AIP_API_PATH'] || 'aip/v1'
45
+ user: ENV.fetch('JUPITER_USER', nil),
46
+ api_key: ENV.fetch('JUPITER_API_KEY', nil),
47
+ jupiter_url: ENV.fetch('JUPITER_URL', nil) || 'http://era.lvh.me:3000/',
48
+ aip_api_path: ENV.fetch('JUPITER_AIP_API_PATH', nil) || 'aip/v1'
54
49
  }
50
+ # rubocop enable: Style/FetchEnvVar
55
51
  }.freeze
56
52
 
57
53
  def self.options
@@ -21,30 +21,31 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.required_ruby_version = '>= 2.5'
23
23
 
24
- spec.add_runtime_dependency 'activesupport', '>= 5', '< 7'
24
+ spec.add_runtime_dependency 'activesupport', '>= 5', '< 8'
25
25
  spec.add_runtime_dependency 'bagit', '~> 0.4'
26
26
  spec.add_runtime_dependency 'connection_pool', '~> 2.2'
27
27
  spec.add_runtime_dependency 'daemons', '~> 1.2', '>= 1.2.4'
28
28
  spec.add_runtime_dependency 'minitar', '~> 0.7'
29
29
  spec.add_runtime_dependency 'openstack', '~> 3.3', '>= 3.3.10'
30
- spec.add_runtime_dependency 'pg', '>= 1.0', '< 1.2'
31
30
  spec.add_runtime_dependency 'rdf', '>= 1.99', '< 4.0'
32
31
  spec.add_runtime_dependency 'rdf-n3', '>= 1.99', '< 4.0'
33
32
  spec.add_runtime_dependency 'redis', '>= 3.3', '< 5.0'
34
33
  spec.add_runtime_dependency 'rest-client', '>= 1.8', '< 3.0'
35
34
  spec.add_runtime_dependency 'rollbar', '>= 2.18', '< 4.0'
35
+ spec.add_runtime_dependency 'uuid', '~> 2.3.9'
36
36
 
37
37
  spec.add_development_dependency 'bundler', '~> 2.0'
38
- spec.add_development_dependency 'coveralls', '~> 0.8'
39
38
  spec.add_development_dependency 'danger', '~> 8.0'
40
39
  spec.add_development_dependency 'pry', '~> 0.10', '>= 0.10.4'
41
40
  spec.add_development_dependency 'pry-byebug', '~> 3.6'
42
41
  spec.add_development_dependency 'rake', '~> 13.0'
43
42
  spec.add_development_dependency 'rspec', '~> 3.0'
44
- spec.add_development_dependency 'rubocop', '~> 0.51'
45
- spec.add_development_dependency 'rubocop-rspec', '~> 1.10'
43
+ spec.add_development_dependency 'rubocop', '~> 1.23'
44
+ spec.add_development_dependency 'rubocop-rspec', '~> 2.6'
46
45
  spec.add_development_dependency 'timecop', '~> 0.8'
47
- spec.add_development_dependency 'uuid', '~> 2.3.9'
48
46
  spec.add_development_dependency 'vcr', '~> 5.0'
49
47
  spec.add_development_dependency 'webmock', '~> 3.3'
48
+ spec.metadata = {
49
+ 'rubygems_mfa_required' => 'true'
50
+ }
50
51
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pushmi_pullyu
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane Murnaghan
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2021-01-29 00:00:00.000000000 Z
12
+ date: 2022-04-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -20,7 +20,7 @@ dependencies:
20
20
  version: '5'
21
21
  - - "<"
22
22
  - !ruby/object:Gem::Version
23
- version: '7'
23
+ version: '8'
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
@@ -30,7 +30,7 @@ dependencies:
30
30
  version: '5'
31
31
  - - "<"
32
32
  - !ruby/object:Gem::Version
33
- version: '7'
33
+ version: '8'
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: bagit
36
36
  requirement: !ruby/object:Gem::Requirement
@@ -113,26 +113,6 @@ dependencies:
113
113
  - - ">="
114
114
  - !ruby/object:Gem::Version
115
115
  version: 3.3.10
116
- - !ruby/object:Gem::Dependency
117
- name: pg
118
- requirement: !ruby/object:Gem::Requirement
119
- requirements:
120
- - - ">="
121
- - !ruby/object:Gem::Version
122
- version: '1.0'
123
- - - "<"
124
- - !ruby/object:Gem::Version
125
- version: '1.2'
126
- type: :runtime
127
- prerelease: false
128
- version_requirements: !ruby/object:Gem::Requirement
129
- requirements:
130
- - - ">="
131
- - !ruby/object:Gem::Version
132
- version: '1.0'
133
- - - "<"
134
- - !ruby/object:Gem::Version
135
- version: '1.2'
136
116
  - !ruby/object:Gem::Dependency
137
117
  name: rdf
138
118
  requirement: !ruby/object:Gem::Requirement
@@ -234,33 +214,33 @@ dependencies:
234
214
  - !ruby/object:Gem::Version
235
215
  version: '4.0'
236
216
  - !ruby/object:Gem::Dependency
237
- name: bundler
217
+ name: uuid
238
218
  requirement: !ruby/object:Gem::Requirement
239
219
  requirements:
240
220
  - - "~>"
241
221
  - !ruby/object:Gem::Version
242
- version: '2.0'
243
- type: :development
222
+ version: 2.3.9
223
+ type: :runtime
244
224
  prerelease: false
245
225
  version_requirements: !ruby/object:Gem::Requirement
246
226
  requirements:
247
227
  - - "~>"
248
228
  - !ruby/object:Gem::Version
249
- version: '2.0'
229
+ version: 2.3.9
250
230
  - !ruby/object:Gem::Dependency
251
- name: coveralls
231
+ name: bundler
252
232
  requirement: !ruby/object:Gem::Requirement
253
233
  requirements:
254
234
  - - "~>"
255
235
  - !ruby/object:Gem::Version
256
- version: '0.8'
236
+ version: '2.0'
257
237
  type: :development
258
238
  prerelease: false
259
239
  version_requirements: !ruby/object:Gem::Requirement
260
240
  requirements:
261
241
  - - "~>"
262
242
  - !ruby/object:Gem::Version
263
- version: '0.8'
243
+ version: '2.0'
264
244
  - !ruby/object:Gem::Dependency
265
245
  name: danger
266
246
  requirement: !ruby/object:Gem::Requirement
@@ -343,28 +323,28 @@ dependencies:
343
323
  requirements:
344
324
  - - "~>"
345
325
  - !ruby/object:Gem::Version
346
- version: '0.51'
326
+ version: '1.23'
347
327
  type: :development
348
328
  prerelease: false
349
329
  version_requirements: !ruby/object:Gem::Requirement
350
330
  requirements:
351
331
  - - "~>"
352
332
  - !ruby/object:Gem::Version
353
- version: '0.51'
333
+ version: '1.23'
354
334
  - !ruby/object:Gem::Dependency
355
335
  name: rubocop-rspec
356
336
  requirement: !ruby/object:Gem::Requirement
357
337
  requirements:
358
338
  - - "~>"
359
339
  - !ruby/object:Gem::Version
360
- version: '1.10'
340
+ version: '2.6'
361
341
  type: :development
362
342
  prerelease: false
363
343
  version_requirements: !ruby/object:Gem::Requirement
364
344
  requirements:
365
345
  - - "~>"
366
346
  - !ruby/object:Gem::Version
367
- version: '1.10'
347
+ version: '2.6'
368
348
  - !ruby/object:Gem::Dependency
369
349
  name: timecop
370
350
  requirement: !ruby/object:Gem::Requirement
@@ -379,20 +359,6 @@ dependencies:
379
359
  - - "~>"
380
360
  - !ruby/object:Gem::Version
381
361
  version: '0.8'
382
- - !ruby/object:Gem::Dependency
383
- name: uuid
384
- requirement: !ruby/object:Gem::Requirement
385
- requirements:
386
- - - "~>"
387
- - !ruby/object:Gem::Version
388
- version: 2.3.9
389
- type: :development
390
- prerelease: false
391
- version_requirements: !ruby/object:Gem::Requirement
392
- requirements:
393
- - - "~>"
394
- - !ruby/object:Gem::Version
395
- version: 2.3.9
396
362
  - !ruby/object:Gem::Dependency
397
363
  name: vcr
398
364
  requirement: !ruby/object:Gem::Requirement
@@ -434,12 +400,12 @@ files:
434
400
  - ".editorconfig"
435
401
  - ".github/CODEOWNERS"
436
402
  - ".github/PULL_REQUEST_TEMPLATE"
403
+ - ".github/dependabot.yml"
437
404
  - ".github/workflows/ruby.yml"
438
405
  - ".gitignore"
439
406
  - ".hound.yml"
440
407
  - ".rspec"
441
408
  - ".rubocop.yml"
442
- - ".travis.yml"
443
409
  - CHANGELOG.md
444
410
  - Dangerfile
445
411
  - Gemfile
@@ -449,6 +415,7 @@ files:
449
415
  - bin/console
450
416
  - bin/setup
451
417
  - config/.gitkeep
418
+ - docker-compose.yml
452
419
  - docs/images/pushmi-pullyu.png
453
420
  - docs/images/system-infrastructure-diagram.png
454
421
  - examples/pushmi_pullyu.yml
@@ -469,7 +436,8 @@ files:
469
436
  homepage: https://github.com/ualbertalib/pushmi_pullyu
470
437
  licenses:
471
438
  - MIT
472
- metadata: {}
439
+ metadata:
440
+ rubygems_mfa_required: 'true'
473
441
  post_install_message:
474
442
  rdoc_options: []
475
443
  require_paths:
@@ -485,7 +453,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
485
453
  - !ruby/object:Gem::Version
486
454
  version: '0'
487
455
  requirements: []
488
- rubygems_version: 3.0.3
456
+ rubygems_version: 3.1.6
489
457
  signing_key:
490
458
  specification_version: 4
491
459
  summary: Ruby application to manage flow of content from Jupiter into Swift for preservation
data/.travis.yml DELETED
@@ -1,16 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- cache: bundler
4
- services:
5
- - redis-server
6
-
7
- before_install:
8
- - gem install bundler
9
- - gem update bundler
10
-
11
- rvm:
12
- - 2.5.0
13
- - 2.6.0
14
-
15
- before_script:
16
- - bundle exec danger