belvo 1.4.0 → 1.5.0
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 +4 -4
- data/.github/workflows/danger-pr-reviews-custom.yml +52 -0
- data/.github/workflows/danger-pr-reviews.yml +7 -4
- data/.github/workflows/generate-docs.yml +3 -2
- data/Dangerfile +21 -15
- data/Dangerfile.custom +6 -0
- data/Gemfile.lock +1 -1
- data/lib/belvo/options.rb +8 -0
- data/lib/belvo/resources.rb +25 -0
- data/lib/belvo/version.rb +1 -1
- data/lib/belvo.rb +6 -0
- data/specs.4.8.gz +0 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb2779e82bc56e77377b9c0a11c349fcf2b9e344d094004f8fd4314a3e3e47ba
|
4
|
+
data.tar.gz: 269766531d31fb9e9b33481024bf47ff534b93a2703210d419e382cb1b93b125
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c7ceb92b9b07ce906f29a71459849f9bef5171ca6028f82e78e0c34404804cf0d591fdcc80684dbdb7623eaa43735d6438d9ed58e39bcfe568384cf65c13ec9a
|
7
|
+
data.tar.gz: a999b7ddb4701aee56cc9da5bcc254efd0b73c5a4195685d219b1b099588af2f161e3810f7b5ed18bfd61bab82bf16987e39f648095f354657042cfd3352a935
|
@@ -0,0 +1,52 @@
|
|
1
|
+
name: Run Danger (Custom)
|
2
|
+
|
3
|
+
on: [pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
name: Run Danger (Custom)
|
8
|
+
runs-on: ubuntu-latest
|
9
|
+
if: ${{ github.actor != 'dependabot[bot]' }}
|
10
|
+
|
11
|
+
steps:
|
12
|
+
- name: Checkout Code
|
13
|
+
uses: actions/checkout@v2
|
14
|
+
with:
|
15
|
+
fetch-depth: 50
|
16
|
+
|
17
|
+
# Setup ruby
|
18
|
+
- name: Set up Ruby 3.2
|
19
|
+
uses: ruby/setup-ruby@v1
|
20
|
+
with:
|
21
|
+
ruby-version: 3.2
|
22
|
+
bundler-cache: true
|
23
|
+
|
24
|
+
# Install the right bundler version
|
25
|
+
- name: Install bundler
|
26
|
+
run: gem install bundler
|
27
|
+
|
28
|
+
# Cache dependencies
|
29
|
+
- name: Cache ruby dependencies
|
30
|
+
id: cache-ruby
|
31
|
+
uses: actions/cache@v3
|
32
|
+
with:
|
33
|
+
path: vendor/bundle
|
34
|
+
key: union-gems-${{ hashFiles('**/Gemfile.lock') }}
|
35
|
+
restore-keys: |
|
36
|
+
union-gems-
|
37
|
+
|
38
|
+
# Install dependencies on cache miss
|
39
|
+
- name: Install ruby dependencies
|
40
|
+
if: steps.cache-ruby.outputs.cache-hit != 'true'
|
41
|
+
run: |
|
42
|
+
bundle config --local without "documentation"
|
43
|
+
bundle config path vendor/bundle
|
44
|
+
bundle install --jobs 4 --retry 3
|
45
|
+
|
46
|
+
# Run danger
|
47
|
+
- name: Run danger
|
48
|
+
env:
|
49
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
50
|
+
run: |
|
51
|
+
bundle config path vendor/bundle
|
52
|
+
bundle exec danger --dangerfile=Dangerfile.custom
|
@@ -6,12 +6,13 @@ jobs:
|
|
6
6
|
build:
|
7
7
|
name: Run Danger
|
8
8
|
runs-on: ubuntu-latest
|
9
|
+
if: ${{ github.actor != 'dependabot[bot]' }}
|
9
10
|
|
10
11
|
steps:
|
11
12
|
- name: Checkout Code
|
12
13
|
uses: actions/checkout@v2
|
13
14
|
with:
|
14
|
-
fetch-depth:
|
15
|
+
fetch-depth: 50
|
15
16
|
|
16
17
|
# Setup ruby
|
17
18
|
- name: Set up Ruby 3.2
|
@@ -27,18 +28,21 @@ jobs:
|
|
27
28
|
# Cache dependencies
|
28
29
|
- name: Cache ruby dependencies
|
29
30
|
id: cache-ruby
|
30
|
-
uses: actions/cache@
|
31
|
+
uses: actions/cache@v3
|
31
32
|
with:
|
32
33
|
path: vendor/bundle
|
33
34
|
key: union-gems-${{ hashFiles('**/Gemfile.lock') }}
|
34
35
|
restore-keys: |
|
35
36
|
union-gems-
|
37
|
+
|
36
38
|
# Install dependencies on cache miss
|
37
39
|
- name: Install ruby dependencies
|
38
40
|
if: steps.cache-ruby.outputs.cache-hit != 'true'
|
39
41
|
run: |
|
42
|
+
bundle config --local without "documentation"
|
40
43
|
bundle config path vendor/bundle
|
41
|
-
bundle install --jobs 4 --retry 3
|
44
|
+
bundle install --jobs 4 --retry 3
|
45
|
+
|
42
46
|
# Run danger
|
43
47
|
- name: Run danger
|
44
48
|
env:
|
@@ -46,4 +50,3 @@ jobs:
|
|
46
50
|
run: |
|
47
51
|
bundle config path vendor/bundle
|
48
52
|
bundle exec danger
|
49
|
-
|
@@ -11,9 +11,10 @@ jobs:
|
|
11
11
|
- name: Checkout Belvo Ruby SDK repo
|
12
12
|
uses: actions/checkout@v2
|
13
13
|
- name: Set up Ruby
|
14
|
-
uses:
|
14
|
+
uses: ruby/setup-ruby@v1
|
15
15
|
with:
|
16
|
-
ruby-version:
|
16
|
+
ruby-version: 3.2
|
17
|
+
bundler-cache: true
|
17
18
|
- name: Install required gem dependencies
|
18
19
|
run: gem install yard --no-document
|
19
20
|
- name: Build RUBY SDK docs with YARD
|
data/Dangerfile
CHANGED
@@ -1,21 +1,27 @@
|
|
1
|
-
#
|
2
|
-
# Mainly to encourage writing up some reasoning about the PR, rather than
|
3
|
-
# just leaving a title
|
4
|
-
fail "Please provide a short summary in the PR description :page_with_curl:" if github.pr_body.length < 10
|
1
|
+
# frozen_string_literal: true
|
5
2
|
|
6
|
-
|
7
|
-
|
8
|
-
|
3
|
+
##########################################################################
|
4
|
+
# THIS FILE IS OWNED BY SECURITY CHANGES TO THIS FILE ARE MADE CENTRALLY #
|
5
|
+
# CONTACT SECURITY@BELVO.COM or SLACK #ASK-SECURITY #
|
6
|
+
##########################################################################
|
7
|
+
|
8
|
+
# Provide a description
|
9
|
+
if github.pr_body.length < 10
|
10
|
+
raise 'Please provide a short summary in the PR description :page_with_curl:'
|
9
11
|
end
|
10
12
|
|
11
|
-
# The title
|
12
|
-
if github.pr_labels.include?(
|
13
|
-
|
14
|
-
elsif
|
15
|
-
|
13
|
+
# The title has to include a JIRA ticket unless is a dependabot PR or SNYK
|
14
|
+
if github.pr_labels.include?('dependencies')
|
15
|
+
message 'PR autogenerated by dependabot'
|
16
|
+
elsif github.pr_title =~ /\[Snyk\]/
|
17
|
+
message 'PR generated by Snyk'
|
18
|
+
elsif github.pr_title !~ /\[[A-Z]{1,10}-[0-9]{1,5}\]/
|
19
|
+
raise 'Please provide a valid Jira ticket ID associated to this PR'\
|
20
|
+
'(e.g. [BEL-XXXXX]'
|
16
21
|
end
|
17
22
|
|
18
|
-
|
23
|
+
if github.pr_title.include? '[WIP]'
|
24
|
+
warn('PR is classed as Work in Progress', sticky: false)
|
25
|
+
end
|
19
26
|
|
20
|
-
message(
|
21
|
-
# rubocop:enable all
|
27
|
+
message('One approval required for merging')
|
data/Dangerfile.custom
ADDED
@@ -0,0 +1,6 @@
|
|
1
|
+
# The PR title should include the correct label
|
2
|
+
if !github.pr_title.match(/\[Snyk\]/) &&
|
3
|
+
!github.pr_labels.include?("dependencies") &&
|
4
|
+
!github.pr_title.match(/^\[(?:Added|Changed|Docs|Fixed|Migrations|Other|Removed|Security)\]/)
|
5
|
+
fail "Please provide a valid PR title label: [Added]/[Changed]/[Docs]/[Fixed]/[Migrations]/[Other]/[Removed]/[Security]."
|
6
|
+
end
|
data/Gemfile.lock
CHANGED
data/lib/belvo/options.rb
CHANGED
@@ -214,4 +214,12 @@ module Belvo
|
|
214
214
|
# @!attribute token [rw] OTP token required by the institution
|
215
215
|
class InvestmentsPortfolioOptions < Faraday::Options.new(:token, :save_data)
|
216
216
|
end
|
217
|
+
|
218
|
+
# @!class EmploymentRecordsOptions < Faraday::Options
|
219
|
+
# Contains configurable properties of an Employment Record
|
220
|
+
# @!attribute save_data [rw] Should data be persisted or not.
|
221
|
+
# @!attribute attach_pdf [rw] Should the PDF file be included in the
|
222
|
+
# response or not.
|
223
|
+
class EmploymentRecordsOptions < Faraday::Options.new(:save_data, :attach_pdf)
|
224
|
+
end
|
217
225
|
end
|
data/lib/belvo/resources.rb
CHANGED
@@ -655,4 +655,29 @@ module Belvo
|
|
655
655
|
@session.post(@endpoint, body)
|
656
656
|
end
|
657
657
|
end
|
658
|
+
|
659
|
+
# Employment records
|
660
|
+
class EmploymentRecords < Resource
|
661
|
+
def initialize(session)
|
662
|
+
super(session)
|
663
|
+
@endpoint = 'api/employment-records/'
|
664
|
+
end
|
665
|
+
|
666
|
+
# Retrieve employment records from an existing government link
|
667
|
+
# @param link [String] Link UUID
|
668
|
+
# @param options [EmploymentRecordsOptions] Configurable properties
|
669
|
+
# @return [Hash] created employment records details
|
670
|
+
# @raise [RequestError] If response code is different than 2XX
|
671
|
+
def retrieve(link:, options: nil)
|
672
|
+
options = EmploymentRecordsOptions.from(options)
|
673
|
+
body = {
|
674
|
+
link: link,
|
675
|
+
save_data: options.save_data || true,
|
676
|
+
attach_pdf: options.attach_pdf
|
677
|
+
}.merge(options)
|
678
|
+
|
679
|
+
body = clean body: body
|
680
|
+
@session.post(@endpoint, body)
|
681
|
+
end
|
682
|
+
end
|
658
683
|
end
|
data/lib/belvo/version.rb
CHANGED
data/lib/belvo.rb
CHANGED
@@ -139,5 +139,11 @@ module Belvo
|
|
139
139
|
def investments_portfolio
|
140
140
|
@investments_portfolio = InvestmentsPortfolio.new @session
|
141
141
|
end
|
142
|
+
|
143
|
+
# Provides access to EmploymentRecords resource
|
144
|
+
# @return [EmploymentRecords]
|
145
|
+
def employment_records
|
146
|
+
@employment_records = EmploymentRecords.new @session
|
147
|
+
end
|
142
148
|
end
|
143
149
|
end
|
data/specs.4.8.gz
ADDED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: belvo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Belvo Finance S.L.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-03-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -151,6 +151,7 @@ files:
|
|
151
151
|
- ".github/CODEOWNERS"
|
152
152
|
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
153
153
|
- ".github/pull_request_template.md"
|
154
|
+
- ".github/workflows/danger-pr-reviews-custom.yml"
|
154
155
|
- ".github/workflows/danger-pr-reviews.yml"
|
155
156
|
- ".github/workflows/generate-docs.yml"
|
156
157
|
- ".gitignore"
|
@@ -158,6 +159,7 @@ files:
|
|
158
159
|
- ".rubocop.yml"
|
159
160
|
- CODE_OF_CONDUCT.md
|
160
161
|
- Dangerfile
|
162
|
+
- Dangerfile.custom
|
161
163
|
- Gemfile
|
162
164
|
- Gemfile.lock
|
163
165
|
- LICENSE
|
@@ -173,6 +175,7 @@ files:
|
|
173
175
|
- lib/belvo/resources.rb
|
174
176
|
- lib/belvo/utils.rb
|
175
177
|
- lib/belvo/version.rb
|
178
|
+
- specs.4.8.gz
|
176
179
|
homepage: https://github.com/belvo-finance/belvo-ruby
|
177
180
|
licenses:
|
178
181
|
- MIT
|