aspera-cli 4.25.1 → 4.25.3
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
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +456 -405
- data/CONTRIBUTING.md +22 -18
- data/README.md +33 -9741
- data/bin/asession +111 -88
- data/lib/aspera/agent/connect.rb +1 -1
- data/lib/aspera/agent/desktop.rb +1 -1
- data/lib/aspera/agent/direct.rb +19 -18
- data/lib/aspera/agent/node.rb +1 -1
- data/lib/aspera/api/aoc.rb +44 -20
- data/lib/aspera/api/faspex.rb +25 -6
- data/lib/aspera/api/node.rb +20 -16
- data/lib/aspera/ascp/installation.rb +32 -51
- data/lib/aspera/assert.rb +2 -2
- data/lib/aspera/cli/extended_value.rb +1 -0
- data/lib/aspera/cli/formatter.rb +0 -4
- data/lib/aspera/cli/hints.rb +18 -4
- data/lib/aspera/cli/main.rb +3 -6
- data/lib/aspera/cli/manager.rb +46 -30
- data/lib/aspera/cli/plugins/aoc.rb +155 -131
- data/lib/aspera/cli/plugins/base.rb +15 -18
- data/lib/aspera/cli/plugins/config.rb +50 -87
- data/lib/aspera/cli/plugins/factory.rb +2 -2
- data/lib/aspera/cli/plugins/faspex.rb +4 -4
- data/lib/aspera/cli/plugins/faspex5.rb +74 -76
- data/lib/aspera/cli/plugins/node.rb +3 -5
- data/lib/aspera/cli/plugins/oauth.rb +26 -25
- data/lib/aspera/cli/plugins/preview.rb +9 -14
- data/lib/aspera/cli/plugins/shares.rb +15 -7
- data/lib/aspera/cli/transfer_agent.rb +2 -2
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/colors.rb +7 -0
- data/lib/aspera/environment.rb +30 -16
- data/lib/aspera/faspex_gw.rb +6 -6
- data/lib/aspera/faspex_postproc.rb +20 -14
- data/lib/aspera/hash_ext.rb +8 -0
- data/lib/aspera/log.rb +15 -15
- data/lib/aspera/markdown.rb +22 -0
- data/lib/aspera/node_simulator.rb +1 -1
- data/lib/aspera/oauth/base.rb +2 -2
- data/lib/aspera/oauth/url_json.rb +2 -2
- data/lib/aspera/oauth/web.rb +1 -1
- data/lib/aspera/preview/generator.rb +9 -9
- data/lib/aspera/rest.rb +44 -37
- data/lib/aspera/rest_call_error.rb +16 -8
- data/lib/aspera/rest_error_analyzer.rb +38 -36
- data/lib/aspera/rest_errors_aspera.rb +19 -18
- data/lib/aspera/transfer/resumer.rb +2 -2
- data/lib/aspera/yaml.rb +49 -0
- data.tar.gz.sig +0 -0
- metadata +17 -3
- metadata.gz.sig +0 -0
- data/release_notes.md +0 -8
data/CONTRIBUTING.md
CHANGED
|
@@ -110,12 +110,15 @@ A few macros and environment variables control certain aspects of the build:
|
|
|
110
110
|
| `ASPERA_CLI_TEST_CONF_URL` | URL for configuration file with secrets for tests. |
|
|
111
111
|
| `ASPERA_CLI_DOC_CHECK_LINKS`| Check links still exist during doc generation. |
|
|
112
112
|
| `LOG_LEVEL` | Change log level in `rake` tasks. |
|
|
113
|
+
| `LOG_SECRETS` | Change log secrets in `rake` tasks. |
|
|
113
114
|
| `ENABLE_COVERAGE` | Enable test coverage analysis when set. |
|
|
114
115
|
| `SIGNING_KEY` | Path to the signing key used to build the gem file. |
|
|
115
|
-
| `
|
|
116
|
+
| `SIGNING_KEY_PEM` | PEM of signing key. |
|
|
116
117
|
|
|
117
118
|
These can be set either as environment variables or directly on the `rake` command line.
|
|
118
119
|
|
|
120
|
+
Setting `SIGNING_KEY_PEM` creates file `$HOME/.gem/signing_key.pem` and sets `SIGNING_KEY` to that path.
|
|
121
|
+
|
|
119
122
|
> [!NOTE]
|
|
120
123
|
> Environment variables `ASPERA_CLI_*` are typically set in the user’s shell profile for development.
|
|
121
124
|
> Others are intended for use on the command line.
|
|
@@ -151,6 +154,12 @@ To check URLs during documentation generation, set the environment variable: `AS
|
|
|
151
154
|
|
|
152
155
|
To debug documentation generation, set the environment variable: `ASPERA_CLI_DOC_DEBUG=debug`.
|
|
153
156
|
|
|
157
|
+
To generate documentation:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
rake doc:build
|
|
161
|
+
```
|
|
162
|
+
|
|
154
163
|
## Test Environment
|
|
155
164
|
|
|
156
165
|
Refer to <tests/README.md>.
|
|
@@ -170,12 +179,6 @@ If you don't want to install optional gems:
|
|
|
170
179
|
bundle config set without optional
|
|
171
180
|
```
|
|
172
181
|
|
|
173
|
-
To build a beta version:
|
|
174
|
-
|
|
175
|
-
```bash
|
|
176
|
-
export GEM_VERSION=$(env -u GEM_VERSION rake tools:version).$(date +%Y%m%d%H%M)
|
|
177
|
-
```
|
|
178
|
-
|
|
179
182
|
### Signed gem
|
|
180
183
|
|
|
181
184
|
A private key is required to generate a signed gem.
|
|
@@ -196,7 +199,7 @@ Update with:
|
|
|
196
199
|
bundle exec rake tools:grpc
|
|
197
200
|
```
|
|
198
201
|
|
|
199
|
-
It downloads the latest `proto` file and then compiles it.
|
|
202
|
+
It downloads the latest `proto` file and then compiles it into ruby sources included in the repo.
|
|
200
203
|
|
|
201
204
|
## Container image build
|
|
202
205
|
|
|
@@ -216,7 +219,8 @@ bundle exec rake -T ^binary:
|
|
|
216
219
|
|
|
217
220
|
### Branching Strategy
|
|
218
221
|
|
|
219
|
-
This project uses a single `main` branch for development.
|
|
222
|
+
This project uses a single `main` branch for development.
|
|
223
|
+
During the development cycle, the version in `lib/aspera/cli/version.rb` uses a `.pre` suffix (e.g., `x.y.z.pre`) to indicate a pre-release state.
|
|
220
224
|
|
|
221
225
|
Feature development and bug fixes can be done either:
|
|
222
226
|
|
|
@@ -233,11 +237,10 @@ When preparing for a new release, do the following:
|
|
|
233
237
|
bundle exec rake test:run
|
|
234
238
|
```
|
|
235
239
|
|
|
236
|
-
- Verify that the container builds successfully (using the
|
|
240
|
+
- Verify that the container builds successfully (using the local gem file):
|
|
237
241
|
|
|
238
242
|
```bash
|
|
239
|
-
|
|
240
|
-
bundle exec rake container:build
|
|
243
|
+
bundle exec rake container:build'[local]'
|
|
241
244
|
bundle exec rake container:test
|
|
242
245
|
```
|
|
243
246
|
|
|
@@ -257,16 +260,17 @@ To create a release:
|
|
|
257
260
|
The workflow automatically:
|
|
258
261
|
|
|
259
262
|
1. Updates `version.rb` with the release version
|
|
260
|
-
2. Rebuilds documentation (PDF manual, README)
|
|
263
|
+
2. Rebuilds documentation (PDF manual, Markdown README)
|
|
261
264
|
3. Commits the changes
|
|
262
265
|
4. Creates and pushes the release tag
|
|
263
|
-
5. Triggers the deploy workflow to publish to [rubygems.org](https://rubygems.org/gems/aspera-cli)
|
|
266
|
+
5. Triggers the `deploy` workflow to publish to [rubygems.org](https://rubygems.org/gems/aspera-cli)
|
|
264
267
|
6. Updates `version.rb` to the next development version with `.pre` suffix
|
|
265
|
-
7. Commits and pushes the version bump
|
|
268
|
+
7. Commits and pushes the version bump in main branch.
|
|
266
269
|
|
|
267
270
|
### Manual Release Process (Alternative)
|
|
268
271
|
|
|
269
|
-
If needed, releases can still be done manually
|
|
272
|
+
If needed, releases can still be done manually.
|
|
273
|
+
Basically, follow the same procedure as in the GitHub action:
|
|
270
274
|
|
|
271
275
|
- Update the version in `lib/aspera/cli/version.rb` (remove `.pre` suffix)
|
|
272
276
|
|
|
@@ -292,9 +296,9 @@ This will trigger the action `.github/workflows/deploy.yml`, which builds the ge
|
|
|
292
296
|
|
|
293
297
|
- After release, update `version.rb` to the next development version with `.pre` suffix
|
|
294
298
|
|
|
295
|
-
##
|
|
299
|
+
## Future Improvements
|
|
296
300
|
|
|
297
|
-
- Replace custom REST and OAuth classes with standard Ruby gems
|
|
301
|
+
- Replace custom REST and OAuth classes with standard Ruby gems ?
|
|
298
302
|
- <https://github.com/rest-client/rest-client>
|
|
299
303
|
- <https://github.com/oauth-xx/oauth2>
|
|
300
304
|
- Use the `thor` gem <http://whatisthor.com/> (or other standard Ruby CLI manager)
|