auth0 5.15.0 → 5.17.0

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: ceba936338486855137ba5c59358f8656aaba565e624865a6d0b5e4092e937e7
4
- data.tar.gz: 5d2521a3c29afe50813d3b53b7f56d260f075c88116bcb04f14f8b93e0eeaebe
3
+ metadata.gz: 001f09f32948583c13fb7a3bf421d34a469ba5cd4b0b8ce080a5febaf2e8369b
4
+ data.tar.gz: 671271047cdaa71aa6cbf6595d35623b9cfdc79e59aa2a5f9f6e8af59e1d6e52
5
5
  SHA512:
6
- metadata.gz: b14982084c5e6a3439a5261b4b2afa8712e0bba674ce0cc8c48f408fef5a16320de484f550b80102fb4f2bb21e6af751214e5682489ea2eeb1b9bc77ebfd0bf9
7
- data.tar.gz: 2702811340ebdd8748449bcec4f01e2366b02bd2f00aec66168a9f088af8755259a11f76268a22e7cfbb347ca5c02ebd4d6eb251070ee42fe19545dd6b73bc89
6
+ metadata.gz: 5d95a176bd531635ac2502eb147384da9ac0417020dc17e6e0592ba508ece19c70cd1e7037718ffcfdb4b1bcedb3dd6c2866746923328fe5777c075e542aabb0
7
+ data.tar.gz: 9e693a863adeabb6940f06832ecfd67c30fbcfb6106108f228c3e3959b1bb0892601cca649a5d3a009ec645b24750f5a467a3942be4202c9c30d353102fb4722
@@ -0,0 +1,30 @@
1
+ name: Return a boolean indicating if the version contains prerelease identifiers
2
+
3
+ #
4
+ # Returns a simple true/false boolean indicating whether the version indicates it's a prerelease or not.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ version:
11
+ required: true
12
+
13
+ outputs:
14
+ prerelease:
15
+ value: ${{ steps.get_prerelease.outputs.PRERELEASE }}
16
+
17
+ runs:
18
+ using: composite
19
+
20
+ steps:
21
+ - id: get_prerelease
22
+ shell: bash
23
+ run: |
24
+ if [[ "${VERSION}" == *"beta"* || "${VERSION}" == *"alpha"* ]]; then
25
+ echo "PRERELEASE=true" >> $GITHUB_OUTPUT
26
+ else
27
+ echo "PRERELEASE=false" >> $GITHUB_OUTPUT
28
+ fi
29
+ env:
30
+ VERSION: ${{ inputs.version }}
@@ -0,0 +1,42 @@
1
+ name: Return the release notes extracted from the PR body
2
+
3
+ #
4
+ # Returns the release notes from the content of a pull request linked to a release branch. It expects the branch name to be in the format release/vX.Y.Z, release/X.Y.Z, release/vX.Y.Z-beta.N. etc.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+ inputs:
9
+ version:
10
+ required: true
11
+ repo_name:
12
+ required: false
13
+ repo_owner:
14
+ required: true
15
+ token:
16
+ required: true
17
+
18
+ outputs:
19
+ release-notes:
20
+ value: ${{ steps.get_release_notes.outputs.RELEASE_NOTES }}
21
+
22
+ runs:
23
+ using: composite
24
+
25
+ steps:
26
+ - uses: actions/github-script@v7
27
+ id: get_release_notes
28
+ with:
29
+ result-encoding: string
30
+ script: |
31
+ const { data: pulls } = await github.rest.pulls.list({
32
+ owner: process.env.REPO_OWNER,
33
+ repo: process.env.REPO_NAME,
34
+ state: 'all',
35
+ head: `${process.env.REPO_OWNER}:release/${process.env.VERSION}`,
36
+ });
37
+ core.setOutput('RELEASE_NOTES', pulls[0].body);
38
+ env:
39
+ GITHUB_TOKEN: ${{ inputs.token }}
40
+ REPO_OWNER: ${{ inputs.repo_owner }}
41
+ REPO_NAME: ${{ inputs.repo_name }}
42
+ VERSION: ${{ inputs.version }}
@@ -0,0 +1,21 @@
1
+ name: Return the version extracted from the branch name
2
+
3
+ #
4
+ # Returns the version from the .version file.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ outputs:
10
+ version:
11
+ value: ${{ steps.get_version.outputs.VERSION }}
12
+
13
+ runs:
14
+ using: composite
15
+
16
+ steps:
17
+ - id: get_version
18
+ shell: bash
19
+ run: |
20
+ VERSION=$(head -1 .version)
21
+ echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT
@@ -0,0 +1,47 @@
1
+ name: Create a GitHub release
2
+
3
+ #
4
+ # Creates a GitHub release with the given version.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ token:
11
+ required: true
12
+ files:
13
+ required: false
14
+ name:
15
+ required: true
16
+ body:
17
+ required: true
18
+ tag:
19
+ required: true
20
+ commit:
21
+ required: true
22
+ draft:
23
+ default: false
24
+ required: false
25
+ prerelease:
26
+ default: false
27
+ required: false
28
+ fail_on_unmatched_files:
29
+ default: true
30
+ required: false
31
+
32
+ runs:
33
+ using: composite
34
+
35
+ steps:
36
+ - uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844
37
+ with:
38
+ body: ${{ inputs.body }}
39
+ name: ${{ inputs.name }}
40
+ tag_name: ${{ inputs.tag }}
41
+ target_commitish: ${{ inputs.commit }}
42
+ draft: ${{ inputs.draft }}
43
+ prerelease: ${{ inputs.prerelease }}
44
+ fail_on_unmatched_files: ${{ inputs.fail_on_unmatched_files }}
45
+ files: ${{ inputs.files }}
46
+ env:
47
+ GITHUB_TOKEN: ${{ inputs.token }}
@@ -0,0 +1,30 @@
1
+ name: Publishes to RubyGems
2
+
3
+ #
4
+ # Publishes to RubyGems
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ rubygems-token:
11
+ required: true
12
+ ruby-version:
13
+ required: true
14
+
15
+ runs:
16
+ using: composite
17
+
18
+ steps:
19
+ - name: Configure Ruby
20
+ uses: ./.github/actions/setup
21
+ with:
22
+ ruby: ${{ inputs.ruby-version }}
23
+
24
+ - name: Publish to RubyGems
25
+ shell: bash
26
+ run: |
27
+ gem build *.gemspec
28
+ gem push *.gem
29
+ env:
30
+ GEM_HOST_API_KEY: ${{ inputs.rubygems-token }}
@@ -0,0 +1,36 @@
1
+ name: Return a boolean indicating if a tag already exists for the repository
2
+
3
+ #
4
+ # Returns a simple true/false boolean indicating whether the tag exists or not.
5
+ #
6
+ # TODO: Remove once the common repo is public.
7
+ #
8
+
9
+ inputs:
10
+ token:
11
+ required: true
12
+ tag:
13
+ required: true
14
+
15
+ outputs:
16
+ exists:
17
+ description: 'Whether the tag exists or not'
18
+ value: ${{ steps.tag-exists.outputs.EXISTS }}
19
+
20
+ runs:
21
+ using: composite
22
+
23
+ steps:
24
+ - id: tag-exists
25
+ shell: bash
26
+ run: |
27
+ GET_API_URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/git/ref/tags/${TAG_NAME}"
28
+ http_status_code=$(curl -LI $GET_API_URL -o /dev/null -w '%{http_code}\n' -s -H "Authorization: token ${GITHUB_TOKEN}")
29
+ if [ "$http_status_code" -ne "404" ] ; then
30
+ echo "EXISTS=true" >> $GITHUB_OUTPUT
31
+ else
32
+ echo "EXISTS=false" >> $GITHUB_OUTPUT
33
+ fi
34
+ env:
35
+ TAG_NAME: ${{ inputs.tag }}
36
+ GITHUB_TOKEN: ${{ inputs.token }}
@@ -39,15 +39,15 @@ jobs:
39
39
  uses: actions/checkout@v4
40
40
 
41
41
  - name: Initialize CodeQL
42
- uses: github/codeql-action/init@v2
42
+ uses: github/codeql-action/init@v3
43
43
  with:
44
44
  languages: ${{ matrix.language }}
45
45
  queries: +security-and-quality
46
46
 
47
47
  - name: Autobuild
48
- uses: github/codeql-action/autobuild@v2
48
+ uses: github/codeql-action/autobuild@v3
49
49
 
50
50
  - name: Perform CodeQL Analysis
51
- uses: github/codeql-action/analyze@v2
51
+ uses: github/codeql-action/analyze@v3
52
52
  with:
53
53
  category: "/language:${{ matrix.language }}"
@@ -1,7 +1,3 @@
1
1
  {
2
- "include": [
3
- { "ruby": "3.0" },
4
- { "ruby": "3.1" },
5
- { "ruby": "3.2" }
6
- ]
2
+ "include": [{ "ruby": "3.1" }, { "ruby": "3.2" }, { "ruby": "3.3" }]
7
3
  }
@@ -0,0 +1,22 @@
1
+ name: Create Release
2
+
3
+ on:
4
+ pull_request:
5
+ types:
6
+ - closed
7
+ workflow_dispatch:
8
+
9
+ permissions:
10
+ contents: write
11
+
12
+ ### TODO: Replace instances of './.github/workflow/' w/ `auth0/dx-sdk-actions/` and append `@latest` after the common `dx-sdk-actions` repo is made public.
13
+ ### TODO: Also remove `get-prerelease`, `get-version`, `rubygems-publish`, `release-create`, `tag-create` and `tag-exists` actions from this repo's .github/actions folder and `ruby-release` from `./github/workflows` once the repo is public.
14
+
15
+ jobs:
16
+ release:
17
+ uses: ./.github/workflows/ruby-release.yml
18
+ with:
19
+ ruby-version: 3.2
20
+ secrets:
21
+ github-token: ${{ secrets.GITHUB_TOKEN }}
22
+ rubygems-token: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
@@ -0,0 +1,72 @@
1
+ name: Create Release
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ ruby-version:
7
+ required: true
8
+ type: string
9
+ secrets:
10
+ github-token:
11
+ required: true
12
+ rubygems-token:
13
+ required: true
14
+
15
+ jobs:
16
+ release:
17
+ if: github.event_name == 'workflow_dispatch' || (github.event_name == 'pull_request' && github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'release/'))
18
+ runs-on: ubuntu-latest
19
+ environment: release
20
+
21
+ steps:
22
+ # Checkout the code
23
+ - uses: actions/checkout@v4
24
+ with:
25
+ fetch-depth: 0
26
+
27
+ # Get the version from the branch name
28
+ - id: get_version
29
+ uses: ./.github/actions/get-version
30
+
31
+ # Get the prerelease flag from the branch name
32
+ - id: get_prerelease
33
+ uses: ./.github/actions/get-prerelease
34
+ with:
35
+ version: ${{ steps.get_version.outputs.version }}
36
+
37
+ # Get the release notes
38
+ # This will expose the release notes as env.RELEASE_NOTES
39
+ - id: get_release_notes
40
+ uses: ./.github/actions/get-release-notes
41
+ with:
42
+ token: ${{ secrets.github-token }}
43
+ version: ${{ steps.get_version.outputs.version }}
44
+ repo_owner: ${{ github.repository_owner }}
45
+ repo_name: ${{ github.event.repository.name }}
46
+
47
+ # Check if the tag already exists
48
+ - id: tag_exists
49
+ uses: ./.github/actions/tag-exists
50
+ with:
51
+ tag: ${{ steps.get_version.outputs.version }}
52
+ token: ${{ secrets.github-token }}
53
+
54
+ # If the tag already exists, exit with an error
55
+ - if: steps.tag_exists.outputs.exists == 'true'
56
+ run: exit 1
57
+
58
+ # Publish the release to our package manager
59
+ - uses: ./.github/actions/rubygems-publish
60
+ with:
61
+ ruby-version: ${{ inputs.ruby-version }}
62
+ rubygems-token: ${{ secrets.rubygems-token }}
63
+
64
+ # Create a release for the tag
65
+ - uses: ./.github/actions/release-create
66
+ with:
67
+ token: ${{ secrets.github-token }}
68
+ name: ${{ steps.get_version.outputs.version }}
69
+ body: ${{ steps.get_release_notes.outputs.release-notes }}
70
+ tag: ${{ steps.get_version.outputs.version }}
71
+ commit: ${{ github.sha }}
72
+ prerelease: ${{ steps.get_prerelease.outputs.prerelease }}
@@ -11,7 +11,7 @@ on:
11
11
  branches:
12
12
  - master
13
13
  schedule:
14
- - cron: '30 0 1,15 * *'
14
+ - cron: "30 0 1,15 * *"
15
15
 
16
16
  permissions:
17
17
  contents: read
@@ -42,6 +42,8 @@ jobs:
42
42
  with:
43
43
  ref: ${{ github.event.pull_request.head.sha || github.ref }}
44
44
 
45
- - uses: snyk/actions/php@b98d498629f1c368650224d6d212bf7dfa89e4bf # pin@0.4.0
45
+ - run: npm install -g snyk
46
+
47
+ - run: snyk test
46
48
  env:
47
49
  SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
@@ -14,7 +14,7 @@ permissions:
14
14
  contents: read
15
15
 
16
16
  concurrency:
17
- group: ${{ github.workflow }}-${{ github.ref }}
17
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
18
18
  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
19
19
 
20
20
  env:
@@ -65,5 +65,5 @@ jobs:
65
65
  run: bundle exec rake test
66
66
 
67
67
  - name: Upload coverage
68
- if: matrix.ruby == '3.2'
69
- uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # pin@3.1.4
68
+ if: matrix.ruby == '3.2' || matrix.ruby == '3.3'
69
+ uses: codecov/codecov-action@4fe8c5f003fae66aa5ebb77cfd3e7bfbbda0b6b0 # pin@3.1.5
data/.shiprc CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "files": {
3
- "lib/auth0/version.rb": []
3
+ "lib/auth0/version.rb": [],
4
+ ".version": []
4
5
  },
5
6
  "prebump": "bundle install && bundle exec rake test",
6
7
  "postbump": "bundle update"
data/.version ADDED
@@ -0,0 +1 @@
1
+ v5.17.0
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Change Log
2
2
 
3
+ ## [v5.17.0](https://github.com/auth0/ruby-auth0/tree/v5.17.0) (2024-05-24)
4
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.16.0...v5.17.0)
5
+
6
+ **Added**
7
+ - Add user session management API calls [\#588](https://github.com/auth0/ruby-auth0/pull/588) ([wjohnstondrip](https://github.com/wjohnstondrip))
8
+
9
+ ## [v5.16.0](https://github.com/auth0/ruby-auth0/tree/v5.16.0) (2023-11-13)
10
+ [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.15.0...v5.16.0)
11
+
12
+ **Added**
13
+ - [SDK-4546] Add orgs in client credentials support [\#540](https://github.com/auth0/ruby-auth0/pull/540) ([adamjmcgrath](https://github.com/adamjmcgrath))
14
+
3
15
  ## [v5.15.0](https://github.com/auth0/ruby-auth0/tree/v5.15.0) (2023-10-30)
4
16
  [Full Changelog](https://github.com/auth0/ruby-auth0/compare/v5.14.2...v5.15.0)
5
17
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- auth0 (5.15.0)
4
+ auth0 (5.17.0)
5
5
  addressable (~> 2.8)
6
6
  jwt (~> 2.7)
7
7
  rest-client (~> 2.1)
@@ -11,22 +11,23 @@ PATH
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- actionpack (7.1.1)
15
- actionview (= 7.1.1)
16
- activesupport (= 7.1.1)
14
+ actionpack (7.1.3.3)
15
+ actionview (= 7.1.3.3)
16
+ activesupport (= 7.1.3.3)
17
17
  nokogiri (>= 1.8.5)
18
+ racc
18
19
  rack (>= 2.2.4)
19
20
  rack-session (>= 1.0.1)
20
21
  rack-test (>= 0.6.3)
21
22
  rails-dom-testing (~> 2.2)
22
23
  rails-html-sanitizer (~> 1.6)
23
- actionview (7.1.1)
24
- activesupport (= 7.1.1)
24
+ actionview (7.1.3.3)
25
+ activesupport (= 7.1.3.3)
25
26
  builder (~> 3.1)
26
27
  erubi (~> 1.11)
27
28
  rails-dom-testing (~> 2.2)
28
29
  rails-html-sanitizer (~> 1.6)
29
- activesupport (7.1.1)
30
+ activesupport (7.1.3.3)
30
31
  base64
31
32
  bigdecimal
32
33
  concurrent-ruby (~> 1.0, >= 1.0.2)
@@ -36,14 +37,14 @@ GEM
36
37
  minitest (>= 5.1)
37
38
  mutex_m
38
39
  tzinfo (~> 2.0)
39
- addressable (2.8.5)
40
+ addressable (2.8.6)
40
41
  public_suffix (>= 2.0.2, < 6.0)
41
42
  ast (2.4.2)
42
- base64 (0.1.1)
43
- bigdecimal (3.1.4)
43
+ base64 (0.2.0)
44
+ bigdecimal (3.1.8)
44
45
  builder (3.2.4)
45
46
  coderay (1.1.3)
46
- concurrent-ruby (1.2.2)
47
+ concurrent-ruby (1.2.3)
47
48
  connection_pool (2.4.1)
48
49
  coveralls (0.7.1)
49
50
  multi_json (~> 1.3)
@@ -51,19 +52,18 @@ GEM
51
52
  simplecov (>= 0.7)
52
53
  term-ansicolor
53
54
  thor
54
- crack (0.4.5)
55
+ crack (1.0.0)
56
+ bigdecimal
55
57
  rexml
56
58
  crass (1.0.6)
57
- diff-lcs (1.5.0)
59
+ diff-lcs (1.5.1)
58
60
  docile (1.4.0)
59
- domain_name (0.5.20190701)
60
- unf (>= 0.0.5, < 1.0.0)
61
+ domain_name (0.6.20240107)
61
62
  dotenv (2.8.1)
62
63
  dotenv-rails (2.8.1)
63
64
  dotenv (= 2.8.1)
64
65
  railties (>= 3.2)
65
- drb (2.1.1)
66
- ruby2_keywords
66
+ drb (2.2.1)
67
67
  erubi (1.12.0)
68
68
  faker (2.23.0)
69
69
  i18n (>= 1.8.11, < 2)
@@ -86,61 +86,62 @@ GEM
86
86
  guard (~> 2.1)
87
87
  guard-compat (~> 1.1)
88
88
  rspec (>= 2.99.0, < 4.0)
89
- hashdiff (1.0.1)
89
+ hashdiff (1.1.0)
90
90
  http-accept (1.7.0)
91
91
  http-cookie (1.0.5)
92
92
  domain_name (~> 0.5)
93
- i18n (1.14.1)
93
+ i18n (1.14.5)
94
94
  concurrent-ruby (~> 1.0)
95
- io-console (0.6.0)
96
- irb (1.8.3)
97
- rdoc
98
- reline (>= 0.3.8)
99
- json (2.6.3)
100
- jwt (2.7.1)
95
+ io-console (0.7.2)
96
+ irb (1.13.1)
97
+ rdoc (>= 4.0.0)
98
+ reline (>= 0.4.2)
99
+ json (2.7.2)
100
+ jwt (2.8.1)
101
+ base64
101
102
  language_server-protocol (3.17.0.3)
102
- listen (3.8.0)
103
+ listen (3.9.0)
103
104
  rb-fsevent (~> 0.10, >= 0.10.3)
104
105
  rb-inotify (~> 0.9, >= 0.9.10)
105
- loofah (2.21.4)
106
+ loofah (2.22.0)
106
107
  crass (~> 1.0.2)
107
108
  nokogiri (>= 1.12.0)
108
- lumberjack (1.2.9)
109
- method_source (1.0.0)
110
- mime-types (3.5.1)
109
+ lumberjack (1.2.10)
110
+ method_source (1.1.0)
111
+ mime-types (3.5.2)
111
112
  mime-types-data (~> 3.2015)
112
- mime-types-data (3.2023.1003)
113
- minitest (5.20.0)
113
+ mime-types-data (3.2024.0507)
114
+ minitest (5.23.1)
114
115
  multi_json (1.15.0)
115
- mutex_m (0.1.2)
116
+ mutex_m (0.2.0)
116
117
  nenv (0.3.0)
117
118
  netrc (0.11.0)
118
- nokogiri (1.15.4-aarch64-linux)
119
+ nokogiri (1.16.5-aarch64-linux)
119
120
  racc (~> 1.4)
120
- nokogiri (1.15.4-arm64-darwin)
121
+ nokogiri (1.16.5-arm64-darwin)
121
122
  racc (~> 1.4)
122
- nokogiri (1.15.4-x86_64-darwin)
123
+ nokogiri (1.16.5-x86_64-darwin)
123
124
  racc (~> 1.4)
124
- nokogiri (1.15.4-x86_64-linux)
125
+ nokogiri (1.16.5-x86_64-linux)
125
126
  racc (~> 1.4)
126
127
  notiffany (0.1.3)
127
128
  nenv (~> 0.1)
128
129
  shellany (~> 0.0)
129
- parallel (1.23.0)
130
- parser (3.2.2.4)
130
+ parallel (1.24.0)
131
+ parser (3.3.1.0)
131
132
  ast (~> 2.4.1)
132
133
  racc
133
- pp (0.4.0)
134
+ pp (0.5.0)
134
135
  prettyprint
135
- prettyprint (0.1.1)
136
+ prettyprint (0.2.0)
136
137
  pry (0.14.2)
137
138
  coderay (~> 1.1)
138
139
  method_source (~> 1.0)
139
- psych (5.1.1.1)
140
+ psych (5.1.2)
140
141
  stringio
141
- public_suffix (5.0.3)
142
- racc (1.7.1)
143
- rack (3.0.8)
142
+ public_suffix (5.0.5)
143
+ racc (1.8.0)
144
+ rack (3.0.11)
144
145
  rack-session (2.0.0)
145
146
  rack (>= 3.0.0)
146
147
  rack-test (2.1.0)
@@ -155,23 +156,23 @@ GEM
155
156
  rails-html-sanitizer (1.6.0)
156
157
  loofah (~> 2.21)
157
158
  nokogiri (~> 1.14)
158
- railties (7.1.1)
159
- actionpack (= 7.1.1)
160
- activesupport (= 7.1.1)
159
+ railties (7.1.3.3)
160
+ actionpack (= 7.1.3.3)
161
+ activesupport (= 7.1.3.3)
161
162
  irb
162
163
  rackup (>= 1.0.0)
163
164
  rake (>= 12.2)
164
165
  thor (~> 1.0, >= 1.2.2)
165
166
  zeitwerk (~> 2.6)
166
167
  rainbow (3.1.1)
167
- rake (13.1.0)
168
+ rake (13.2.1)
168
169
  rb-fsevent (0.11.2)
169
- rb-inotify (0.10.1)
170
+ rb-inotify (0.11.1)
170
171
  ffi (~> 1.0)
171
- rdoc (6.5.0)
172
+ rdoc (6.7.0)
172
173
  psych (>= 4.0.0)
173
- regexp_parser (2.8.2)
174
- reline (0.3.9)
174
+ regexp_parser (2.9.2)
175
+ reline (0.5.7)
175
176
  io-console (~> 0.5)
176
177
  rest-client (2.1.0)
177
178
  http-accept (>= 1.7.0, < 2.0)
@@ -179,39 +180,40 @@ GEM
179
180
  mime-types (>= 1.16, < 4.0)
180
181
  netrc (~> 0.8)
181
182
  retryable (3.0.5)
182
- rexml (3.2.6)
183
- rspec (3.12.0)
184
- rspec-core (~> 3.12.0)
185
- rspec-expectations (~> 3.12.0)
186
- rspec-mocks (~> 3.12.0)
187
- rspec-core (3.12.2)
188
- rspec-support (~> 3.12.0)
189
- rspec-expectations (3.12.3)
183
+ rexml (3.2.8)
184
+ strscan (>= 3.0.9)
185
+ rspec (3.13.0)
186
+ rspec-core (~> 3.13.0)
187
+ rspec-expectations (~> 3.13.0)
188
+ rspec-mocks (~> 3.13.0)
189
+ rspec-core (3.13.0)
190
+ rspec-support (~> 3.13.0)
191
+ rspec-expectations (3.13.0)
190
192
  diff-lcs (>= 1.2.0, < 2.0)
191
- rspec-support (~> 3.12.0)
192
- rspec-mocks (3.12.6)
193
+ rspec-support (~> 3.13.0)
194
+ rspec-mocks (3.13.1)
193
195
  diff-lcs (>= 1.2.0, < 2.0)
194
- rspec-support (~> 3.12.0)
195
- rspec-support (3.12.1)
196
- rubocop (1.57.2)
196
+ rspec-support (~> 3.13.0)
197
+ rspec-support (3.13.1)
198
+ rubocop (1.64.0)
197
199
  json (~> 2.3)
198
200
  language_server-protocol (>= 3.17.0)
199
201
  parallel (~> 1.10)
200
- parser (>= 3.2.2.4)
202
+ parser (>= 3.3.0.2)
201
203
  rainbow (>= 2.2.2, < 4.0)
202
204
  regexp_parser (>= 1.8, < 3.0)
203
205
  rexml (>= 3.2.5, < 4.0)
204
- rubocop-ast (>= 1.28.1, < 2.0)
206
+ rubocop-ast (>= 1.31.1, < 2.0)
205
207
  ruby-progressbar (~> 1.7)
206
208
  unicode-display_width (>= 2.4.0, < 3.0)
207
- rubocop-ast (1.30.0)
208
- parser (>= 3.2.1.0)
209
- rubocop-rails (2.22.1)
209
+ rubocop-ast (1.31.3)
210
+ parser (>= 3.3.1.0)
211
+ rubocop-rails (2.25.0)
210
212
  activesupport (>= 4.2.0)
211
213
  rack (>= 1.1)
212
214
  rubocop (>= 1.33.0, < 2.0)
215
+ rubocop-ast (>= 1.31.1, < 2.0)
213
216
  ruby-progressbar (1.13.0)
214
- ruby2_keywords (0.0.5)
215
217
  shellany (0.0.1)
216
218
  simplecov (0.22.0)
217
219
  docile (~> 1.1)
@@ -222,29 +224,28 @@ GEM
222
224
  simplecov (~> 0.19)
223
225
  simplecov-html (0.12.3)
224
226
  simplecov_json_formatter (0.1.4)
225
- stringio (3.0.8)
227
+ stringio (3.1.0)
228
+ strscan (3.1.0)
226
229
  sync (0.5.0)
227
- term-ansicolor (1.7.1)
230
+ term-ansicolor (1.8.0)
228
231
  tins (~> 1.0)
229
232
  terminal-notifier-guard (1.7.0)
230
- thor (1.3.0)
233
+ thor (1.3.1)
231
234
  timecop (0.9.8)
232
- tins (1.32.1)
235
+ tins (1.33.0)
236
+ bigdecimal
233
237
  sync
234
238
  tzinfo (2.0.6)
235
239
  concurrent-ruby (~> 1.0)
236
- unf (0.1.4)
237
- unf_ext
238
- unf_ext (0.0.8.2)
239
240
  unicode-display_width (2.5.0)
240
241
  vcr (6.2.0)
241
- webmock (3.19.1)
242
+ webmock (3.23.1)
242
243
  addressable (>= 2.8.0)
243
244
  crack (>= 0.3.2)
244
245
  hashdiff (>= 0.4.0, < 2.0.0)
245
246
  webrick (1.8.1)
246
247
  zache (0.13.1)
247
- zeitwerk (2.6.12)
248
+ zeitwerk (2.6.14)
248
249
 
249
250
  PLATFORMS
250
251
  aarch64-linux
@@ -5,8 +5,8 @@ GEM
5
5
  jwt (2.5.0)
6
6
  mustermann (2.0.2)
7
7
  ruby2_keywords (~> 0.0.1)
8
- nio4r (2.5.9)
9
- puma (5.6.7)
8
+ nio4r (2.7.0)
9
+ puma (5.6.8)
10
10
  nio4r (~> 2.0)
11
11
  rack (2.2.6.4)
12
12
  rack-protection (2.2.3)
@@ -31,7 +31,8 @@ module Auth0
31
31
  request_params = {
32
32
  grant_type: 'client_credentials',
33
33
  client_id: client_id,
34
- audience: audience
34
+ audience: audience,
35
+ organization: organization
35
36
  }
36
37
 
37
38
  populate_client_assertion_or_secret(request_params, client_id: client_id, client_secret: client_secret)
@@ -11,13 +11,15 @@ module Auth0
11
11
  # @param audience [string] The audience of the client grant to retrieve.
12
12
  # @param page [int] Page number to get, 0-based.
13
13
  # @param per_page [int] Results per page if also passing a page number.
14
+ # @param allow_any_organization [bool] Optional filter on allow_any_organization.
14
15
  # @return [json] Returns the client grants.
15
- def client_grants (client_id: nil, audience: nil, page: nil, per_page: nil)
16
+ def client_grants (client_id: nil, audience: nil, page: nil, per_page: nil, allow_any_organization: nil)
16
17
  request_params = {
17
18
  client_id: client_id,
18
19
  audience: audience,
19
20
  page: page,
20
- per_page: per_page
21
+ per_page: per_page,
22
+ allow_any_organization: allow_any_organization
21
23
  }
22
24
  get(client_grants_path, request_params)
23
25
  end
@@ -54,6 +56,29 @@ module Auth0
54
56
  end
55
57
  alias update_client_grant patch_client_grant
56
58
 
59
+
60
+ # Get the organizations associated to a client grant.
61
+ # @param id [string] The client_grant_id of the client grant.
62
+ # @param options [hash] The Hash options used to define the paging of results
63
+ # * :per_page [integer] The amount of entries per page. Default: 50. Max value: 100.
64
+ # * :page [integer] The page number. Zero based.
65
+ # * :from [string] For checkpoint pagination, the ID from which to start selection from.
66
+ # * :take [integer] For checkpoint pagination, the number of entries to retrieve. Default is 50.
67
+ # * :include_totals [boolean] True to include query summary in the result, false or nil otherwise.
68
+ # @return [json] Returns the organizations.
69
+ def get_client_grants_organizations(client_grant_id, options = {})
70
+ raise Auth0::InvalidParameter, 'Must specify a client grant id' if client_grant_id.to_s.empty?
71
+ request_params = {
72
+ per_page: options.fetch(:per_page, nil),
73
+ page: options.fetch(:page, nil),
74
+ from: options.fetch(:from, nil),
75
+ take: options.fetch(:take, nil),
76
+ include_totals: options.fetch(:include_totals, nil)
77
+ }
78
+ path = "#{client_grants_path}/#{client_grant_id}/organizations"
79
+ get(path, request_params)
80
+ end
81
+
57
82
  private
58
83
 
59
84
  # Client Grants API path
@@ -330,6 +330,52 @@ module Auth0
330
330
  end
331
331
  alias remove_organizations_member_roles delete_organizations_member_roles
332
332
 
333
+ # Get client grants associated to an organization
334
+ # @param organization_id [string] The Organization ID
335
+ # @param options [hash] The Hash options used to define the paging of results
336
+ # * :client_id [string] The client_id of the client grant to retrieve.
337
+ # * :audience [string] The audience of the client grant to retrieve.
338
+ # * :per_page [integer] The amount of entries per page. Default: 50. Max value: 100.
339
+ # * :page [integer] The page number. Zero based.
340
+ # * :include_totals [boolean] True to include query summary in the result, false or nil otherwise.
341
+ def get_organizations_client_grants(organization_id, options= {})
342
+ raise Auth0::MissingOrganizationId, 'Must supply a valid organization_id' if organization_id.to_s.empty?
343
+ request_params = {
344
+ client_id: options.fetch(:client_id, nil),
345
+ audience: options.fetch(:audience, nil),
346
+ per_page: options.fetch(:per_page, nil),
347
+ page: options.fetch(:page, nil),
348
+ include_totals: options.fetch(:include_totals, nil)
349
+ }
350
+ path = "#{organizations_client_grants_path(organization_id)}"
351
+ get(path, request_params)
352
+ end
353
+
354
+ # Associate a client grant with an organization
355
+ # @param organization_id [string] The Organization ID
356
+ # @param grant_id [string] The Client Grant ID you want to associate to the Organization.
357
+ def create_organizations_client_grant(organization_id, grant_id)
358
+ raise Auth0::MissingOrganizationId, 'Must supply a valid organization_id' if organization_id.to_s.empty?
359
+ raise Auth0::InvalidParameter, 'Must supply a valid grant_id' if grant_id.to_s.empty?
360
+
361
+ body = {}
362
+ body[:grant_id] = grant_id
363
+
364
+ path = "#{organizations_client_grants_path(organization_id)}"
365
+ post(path, body)
366
+ end
367
+
368
+ # Remove a client grant from an organization
369
+ # @param organization_id [string] The Organization ID
370
+ # @param grant_id [string] The Client Grant ID you want to remove from the Organization.
371
+ def delete_organizations_client_grant(organization_id, grant_id)
372
+ raise Auth0::MissingOrganizationId, 'Must supply a valid organization_id' if organization_id.to_s.empty?
373
+ raise Auth0::InvalidParameter, 'Must supply a valid grant_id' if grant_id.to_s.empty?
374
+
375
+ path = "#{organizations_path}/#{organization_id}/client-grants/#{grant_id}"
376
+ delete(path)
377
+ end
378
+
333
379
  private
334
380
  # Organizations API path
335
381
  def organizations_path
@@ -351,6 +397,10 @@ module Auth0
351
397
  def organizations_invitations_path(org_id)
352
398
  "#{organizations_path}/#{org_id}/invitations"
353
399
  end
400
+
401
+ def organizations_client_grants_path(org_id)
402
+ "#{organizations_path}/#{org_id}/client-grants"
403
+ end
354
404
  end
355
405
  end
356
406
  end
@@ -445,6 +445,26 @@ module Auth0
445
445
  delete "#{users_path}/#{user_id}/authentication-methods/#{authentication_method_id}"
446
446
  end
447
447
 
448
+ # Delete all sessions for a user.
449
+ #
450
+ # @param user_id [string] The user ID
451
+ # @see https://auth0.com/docs/api/management/v2/users/delete-sessions-for-user
452
+ def delete_user_sessions(user_id)
453
+ raise Auth0::MissingUserId, 'Must supply a valid user_id' if user_id.to_s.empty?
454
+
455
+ delete "#{users_path}/#{user_id}/sessions"
456
+ end
457
+
458
+ # Retrieve details for a user's sessions.
459
+ #
460
+ # @param user_id [string] The user ID
461
+ # @see https://auth0.com/docs/api/management/v2/users/get-sessions-for-user
462
+ def user_sessions(user_id)
463
+ raise Auth0::MissingUserId, 'Must supply a valid user_id' if user_id.to_s.empty?
464
+
465
+ get "#{users_path}/#{user_id}/sessions"
466
+ end
467
+
448
468
  private
449
469
 
450
470
  # Users API path
data/lib/auth0/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  # current version of gem
2
2
  module Auth0
3
- VERSION = '5.15.0'.freeze
3
+ VERSION = '5.17.0'.freeze
4
4
  end
@@ -56,6 +56,7 @@ describe Auth0::Api::AuthenticationEndpoints do
56
56
  grant_type: 'client_credentials',
57
57
  client_id: client_id,
58
58
  audience: api_identifier,
59
+ organization: nil,
59
60
  client_secret: client_secret
60
61
  }.to_json
61
62
  ))
@@ -74,6 +75,33 @@ describe Auth0::Api::AuthenticationEndpoints do
74
75
  expect(result.expires_in).not_to be_nil
75
76
  end
76
77
 
78
+ it 'requests a new token using organization' do
79
+ expect(RestClient::Request).to receive(:execute).with(hash_including(
80
+ method: :post,
81
+ url: 'https://samples.auth0.com/oauth/token',
82
+ payload: {
83
+ grant_type: 'client_credentials',
84
+ client_id: client_id,
85
+ audience: api_identifier,
86
+ organization: 'foo',
87
+ client_secret: client_secret
88
+ }.to_json
89
+ ))
90
+ .and_return(StubResponse.new({
91
+ "access_token" => "test_response",
92
+ "expires_in" => 86400,
93
+ "scope" => "scope"},
94
+ true,
95
+ 200))
96
+
97
+ result = client_secret_instance.send :api_token, audience: api_identifier, organization: 'foo'
98
+
99
+ expect(result).to be_a_kind_of(Auth0::ApiToken)
100
+ expect(result.access_token).not_to be_nil
101
+ expect(result.scope).not_to be_nil
102
+ expect(result.expires_in).not_to be_nil
103
+ end
104
+
77
105
  it 'requests a new token using client_assertion' do
78
106
  expect(RestClient::Request).to receive(:execute) do |arg|
79
107
  expect(arg).to match(
@@ -14,6 +14,7 @@ describe Auth0::Api::V2::ClientGrants do
14
14
  expect(@instance).to receive(:get).with(
15
15
  '/api/v2/client-grants', {
16
16
  client_id: nil,
17
+ allow_any_organization: nil,
17
18
  audience: nil,
18
19
  page: nil,
19
20
  per_page: nil
@@ -27,6 +28,7 @@ describe Auth0::Api::V2::ClientGrants do
27
28
  expect(@instance).to receive(:get).with(
28
29
  '/api/v2/client-grants', {
29
30
  client_id: '1',
31
+ allow_any_organization: nil,
30
32
  audience: audience,
31
33
  page: nil,
32
34
  per_page: nil
@@ -38,12 +40,25 @@ describe Auth0::Api::V2::ClientGrants do
38
40
  expect(@instance).to receive(:get).with(
39
41
  '/api/v2/client-grants', {
40
42
  client_id: nil,
43
+ allow_any_organization: nil,
41
44
  audience: nil,
42
45
  page: 1,
43
46
  per_page: 2
44
47
  })
45
48
  expect { @instance.client_grants(page: 1, per_page: 2) }.not_to raise_error
46
49
  end
50
+
51
+ it 'is expected to send get /api/v2/client-grants/ with allow_any_organization' do
52
+ expect(@instance).to receive(:get).with(
53
+ '/api/v2/client-grants', {
54
+ client_id: nil,
55
+ allow_any_organization: true,
56
+ audience: nil,
57
+ page: nil,
58
+ per_page: nil
59
+ })
60
+ expect { @instance.client_grants(allow_any_organization: true) }.not_to raise_error
61
+ end
47
62
  end
48
63
 
49
64
  context '.create_client_grant' do
@@ -73,4 +88,19 @@ describe Auth0::Api::V2::ClientGrants do
73
88
  it { expect { @instance.patch_client_grant('', nil) }.to raise_error 'Must specify a client grant id' }
74
89
  it { expect { @instance.patch_client_grant('some', nil) }.to raise_error 'Must specify a valid body' }
75
90
  end
91
+
92
+ context '.get_client_grants_organizations' do
93
+ it { expect(@instance).to respond_to(:get_client_grants_organizations) }
94
+ it 'is expected to send get to /api/v2/client-grants/organizations' do
95
+ expect(@instance).to receive(:get).with('/api/v2/client-grants/1/organizations', {
96
+ per_page: nil,
97
+ page: nil,
98
+ from: nil,
99
+ take: nil,
100
+ include_totals: nil
101
+ })
102
+ expect { @instance.get_client_grants_organizations('1') }.not_to raise_error
103
+ end
104
+ it { expect { @instance.get_client_grants_organizations('') }.to raise_error 'Must specify a client grant id' }
105
+ end
76
106
  end
@@ -639,4 +639,70 @@ describe Auth0::Api::V2::Organizations do
639
639
  expect { @instance.delete_organizations_member_roles('org_id', 'user_id') }.to raise_error 'Must supply an array of role ids'
640
640
  end
641
641
  end
642
+
643
+ context '.get_organizations_client_grants' do
644
+ it 'is expected to respond to a get_organizations_client_grants method' do
645
+ expect(@instance).to respond_to(:get_organizations_client_grants)
646
+ end
647
+
648
+ it 'is expected to get /api/v2/organizations/org_id/client-grants' do
649
+ expect(@instance).to receive(:get).with(
650
+ '/api/v2/organizations/org_id/client-grants', {
651
+ per_page: nil,
652
+ page: nil,
653
+ client_id: nil,
654
+ audience: nil,
655
+ include_totals: nil
656
+ })
657
+ expect { @instance.get_organizations_client_grants('org_id') }.not_to raise_error
658
+ end
659
+
660
+ it 'is expected to get /api/v2/organizations/org_id/client-grants with custom parameters' do
661
+ expect(@instance).to receive(:get).with(
662
+ '/api/v2/organizations/org_id/client-grants', {
663
+ per_page: 10,
664
+ page: 1,
665
+ client_id: 'client_id',
666
+ audience: 'api',
667
+ include_totals: true
668
+ })
669
+ expect do
670
+ @instance.get_organizations_client_grants(
671
+ 'org_id',
672
+ per_page: 10,
673
+ page: 1,
674
+ client_id: 'client_id',
675
+ audience: 'api',
676
+ include_totals: true
677
+ )
678
+ end.not_to raise_error
679
+ end
680
+ end
681
+
682
+ context '.create_organizations_client_grants' do
683
+ it 'is expected to respond to a create_organizations_client_grants method' do
684
+ expect(@instance).to respond_to(:create_organizations_client_grant)
685
+ end
686
+
687
+ it 'is expected to post /api/v2/organizations/org_id/client-grants' do
688
+ expect(@instance).to receive(:post).with(
689
+ '/api/v2/organizations/org_id/client-grants', {
690
+ grant_id: 'grant_id'
691
+ })
692
+ expect { @instance.create_organizations_client_grant('org_id', 'grant_id') }.not_to raise_error
693
+ end
694
+ end
695
+
696
+ context '.delete_organizations_client_grant' do
697
+ it 'is expected to respond to a delete_organizations_client_grant method' do
698
+ expect(@instance).to respond_to(:delete_organizations_client_grant)
699
+ end
700
+
701
+ it 'is expected to delete /api/v2/organizations/org_id/client-grants' do
702
+ expect(@instance).to receive(:delete).with(
703
+ '/api/v2/organizations/org_id/client-grants/grant_id')
704
+ expect { @instance.delete_organizations_client_grant('org_id', 'grant_id') }.not_to raise_error
705
+ end
706
+ end
707
+
642
708
  end
@@ -801,4 +801,49 @@ describe Auth0::Api::V2::Users do
801
801
  end.to_not raise_error
802
802
  end
803
803
  end
804
+
805
+ context '.delete_user_sessions' do
806
+ it 'is expected to respond to delete_user_sessions' do
807
+ expect(@instance).to respond_to(:delete_user_sessions)
808
+ end
809
+
810
+ it 'is expected to raise an exception for a missing user ID' do
811
+ expect { @instance.delete_user_sessions(nil) }.to raise_exception(Auth0::MissingUserId)
812
+ end
813
+
814
+ it 'is expected to call the endpoint' do
815
+ expect(@instance).to receive(:delete).with(
816
+ '/api/v2/users/USER_ID/sessions'
817
+ )
818
+
819
+ expect do
820
+ @instance.delete_user_sessions 'USER_ID'
821
+ end.to_not raise_error
822
+ end
823
+ end
824
+
825
+ context '.user_sessions' do
826
+ it 'is expected to respond to user_sessions' do
827
+ expect(@instance).to respond_to :user_authentication_method
828
+ end
829
+
830
+ it 'is expected to respond to user_sessions' do
831
+ expect(@instance).to respond_to :user_sessions
832
+ end
833
+
834
+ it 'is expected to raise an exception for a missing user ID' do
835
+ expect { @instance.user_sessions(nil) }.to raise_exception(Auth0::MissingUserId)
836
+ end
837
+
838
+ it 'is expected to GET a user authentication method' do
839
+ expect(@instance).to receive(:get).with(
840
+ '/api/v2/users/USER_ID/sessions'
841
+ )
842
+
843
+ expect do
844
+ @instance.user_sessions('USER_ID')
845
+ end.not_to raise_error
846
+
847
+ end
848
+ end
804
849
  end
@@ -64,7 +64,8 @@ describe Auth0::Mixins::Initializer do
64
64
  grant_type: 'client_credentials',
65
65
  client_id: client_id,
66
66
  client_secret: client_secret,
67
- audience: api_identifier
67
+ audience: api_identifier,
68
+ organization: nil
68
69
  }
69
70
 
70
71
  expect(RestClient::Request).to receive(:execute) do |arg|
@@ -11,7 +11,8 @@ describe Auth0::Mixins::TokenManagement do
11
11
  grant_type: 'client_credentials',
12
12
  client_id: client_id,
13
13
  client_secret: client_secret,
14
- audience: api_identifier
14
+ audience: api_identifier,
15
+ organization: nil
15
16
  } }
16
17
 
17
18
  let(:params) { {
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auth0
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.15.0
4
+ version: 5.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Auth0
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2023-10-30 00:00:00.000000000 Z
14
+ date: 2024-05-28 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rest-client
@@ -203,7 +203,6 @@ extensions: []
203
203
  extra_rdoc_files: []
204
204
  files:
205
205
  - ".bundle/config"
206
- - ".circleci/config.yml"
207
206
  - ".devcontainer/Dockerfile"
208
207
  - ".devcontainer/devcontainer.json"
209
208
  - ".env.example"
@@ -212,12 +211,19 @@ files:
212
211
  - ".github/ISSUE_TEMPLATE/Feature Request.yml"
213
212
  - ".github/ISSUE_TEMPLATE/config.yml"
214
213
  - ".github/PULL_REQUEST_TEMPLATE.md"
214
+ - ".github/actions/get-prerelease/action.yml"
215
+ - ".github/actions/get-release-notes/action.yml"
216
+ - ".github/actions/get-version/action.yml"
217
+ - ".github/actions/release-create/action.yml"
218
+ - ".github/actions/rubygems-publish/action.yml"
215
219
  - ".github/actions/setup/action.yml"
220
+ - ".github/actions/tag-exists/action.yml"
216
221
  - ".github/dependabot.yml"
217
222
  - ".github/stale.yml"
218
223
  - ".github/workflows/codeql.yml"
219
224
  - ".github/workflows/matrix.json"
220
- - ".github/workflows/publish.yml"
225
+ - ".github/workflows/release.yml"
226
+ - ".github/workflows/ruby-release.yml"
221
227
  - ".github/workflows/semgrep.yml"
222
228
  - ".github/workflows/snyk.yml"
223
229
  - ".github/workflows/test.yml"
@@ -228,6 +234,7 @@ files:
228
234
  - ".semgrepignore"
229
235
  - ".shiprc"
230
236
  - ".snyk"
237
+ - ".version"
231
238
  - CHANGELOG.md
232
239
  - CODE_OF_CONDUCT.md
233
240
  - DEPLOYMENT.md
@@ -593,7 +600,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
593
600
  - !ruby/object:Gem::Version
594
601
  version: '0'
595
602
  requirements: []
596
- rubygems_version: 3.4.10
603
+ rubygems_version: 3.4.19
597
604
  signing_key:
598
605
  specification_version: 4
599
606
  summary: Auth0 API Client
data/.circleci/config.yml DELETED
@@ -1,60 +0,0 @@
1
- version: 2.1
2
- orbs:
3
- ship: auth0/ship@0
4
- codecov: codecov/codecov@3
5
-
6
- matrix_ruby_versions: &matrix_ruby_versions
7
- matrix:
8
- parameters:
9
- ruby_version: ["3.0", "3.1", "3.2"]
10
- # Default version of ruby to use for lint and publishing
11
- default_ruby_version: &default_ruby_version "3.2"
12
-
13
- executors:
14
- ruby-image:
15
- parameters:
16
- ruby_version:
17
- type: string
18
- default: *default_ruby_version
19
- docker:
20
- - image: cimg/ruby:<< parameters.ruby_version >>
21
-
22
- jobs:
23
- run-tests:
24
- parameters:
25
- ruby_version:
26
- type: string
27
- default: *default_ruby_version
28
- executor:
29
- name: ruby-image
30
- ruby_version: << parameters.ruby_version >>
31
- steps:
32
- - checkout
33
- - run: gem install bundler:2.3.22
34
- - restore_cache:
35
- key: gems-v2-{{ checksum "Gemfile.lock" }}
36
- - run: bundle check --path=vendor/bundle || bundle install --path=vendor/bundle
37
- - save_cache:
38
- key: gems-v2-{{ checksum "Gemfile.lock" }}
39
- paths:
40
- - vendor/bundle
41
- # Must define DOMAIN, CLIENT_ID, CLIENT_SECRET and MASTER_JWT env
42
- - run: bundle exec rake test
43
- - codecov/upload:
44
- file: /home/circleci/project/coverage/coverage.xml
45
-
46
- workflows:
47
- tests:
48
- jobs:
49
- - run-tests:
50
- <<: *matrix_ruby_versions
51
- - ship/ruby-publish:
52
- context:
53
- - publish-rubygems
54
- - publish-gh
55
- filters:
56
- branches:
57
- only:
58
- - master
59
- requires:
60
- - run-tests
@@ -1,37 +0,0 @@
1
- name: Publish Release
2
-
3
- on:
4
- workflow_dispatch:
5
- inputs:
6
- branch:
7
- description: The branch to release from.
8
- required: true
9
- default: master
10
-
11
- permissions:
12
- contents: read
13
-
14
- jobs:
15
- publish:
16
- name: Publish to RubyGems
17
- runs-on: ubuntu-latest
18
- environment: release
19
-
20
- steps:
21
- - name: Checkout code
22
- uses: actions/checkout@v4
23
- with:
24
- fetch-depth: 0
25
- ref: ${{ github.event.inputs.branch }}
26
-
27
- - name: Configure Ruby
28
- uses: ./.github/actions/setup
29
- with:
30
- ruby: 3.2
31
-
32
- - name: Publish to RubyGems
33
- run: |
34
- gem build *.gemspec
35
- gem push *.gem
36
- env:
37
- GEM_HOST_API_KEY: ${{secrets.RUBYGEMS_AUTH_TOKEN}}