aspera-cli 4.25.0.pre2 → 4.25.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
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +3 -0
- data/CONTRIBUTING.md +60 -18
- data/README.md +164 -133
- data/lib/aspera/agent/factory.rb +9 -6
- data/lib/aspera/agent/transferd.rb +4 -4
- data/lib/aspera/api/aoc.rb +33 -24
- data/lib/aspera/api/ats.rb +1 -0
- data/lib/aspera/api/faspex.rb +11 -5
- data/lib/aspera/ascmd.rb +1 -1
- data/lib/aspera/ascp/installation.rb +5 -5
- data/lib/aspera/cli/formatter.rb +15 -62
- data/lib/aspera/cli/manager.rb +8 -42
- data/lib/aspera/cli/plugins/aoc.rb +48 -30
- data/lib/aspera/cli/plugins/ats.rb +30 -36
- data/lib/aspera/cli/plugins/base.rb +6 -6
- data/lib/aspera/cli/plugins/config.rb +5 -4
- data/lib/aspera/cli/plugins/faspex.rb +5 -3
- data/lib/aspera/cli/plugins/faspex5.rb +10 -8
- data/lib/aspera/cli/plugins/faspio.rb +3 -1
- data/lib/aspera/cli/plugins/node.rb +9 -6
- data/lib/aspera/cli/plugins/oauth.rb +12 -11
- data/lib/aspera/cli/plugins/preview.rb +2 -2
- data/lib/aspera/cli/transfer_agent.rb +1 -2
- data/lib/aspera/cli/version.rb +1 -1
- data/lib/aspera/command_line_builder.rb +5 -5
- data/lib/aspera/dot_container.rb +108 -0
- data/lib/aspera/id_generator.rb +7 -10
- data/lib/aspera/oauth/base.rb +25 -38
- data/lib/aspera/oauth/factory.rb +5 -6
- data/lib/aspera/oauth/generic.rb +1 -1
- data/lib/aspera/oauth/jwt.rb +1 -1
- data/lib/aspera/oauth/url_json.rb +4 -3
- data/lib/aspera/oauth/web.rb +2 -2
- data/lib/aspera/preview/file_types.rb +1 -1
- data/lib/aspera/rest.rb +5 -2
- data/lib/aspera/ssh.rb +6 -5
- data/lib/aspera/sync/conf.schema.yaml +2 -2
- data/lib/aspera/transfer/parameters.rb +6 -6
- data/lib/aspera/transfer/spec.schema.yaml +3 -3
- data/lib/aspera/transfer/spec_doc.rb +11 -21
- data/lib/aspera/uri_reader.rb +17 -3
- data.tar.gz.sig +0 -0
- metadata +2 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9e812ee0dbd658feeaea8c37d4095df243f57a656b669e99460ca791585121a6
|
|
4
|
+
data.tar.gz: a52360171fc63925f01cd7562453484d04e795221c02c36b78e29c99ed25276e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 70cb5577853b1c8c0a86e85dc55e0e43d9f0c2d18a58f9bf560375c67a76a04e1c06395321789ba8edbcec05c68e7642df2fb9ed5133a8c333992c8254e42dee
|
|
7
|
+
data.tar.gz: 0d25857a31812782d7f831b5f9b4e95962621d4a712dbcbfa9be3889359dc163ca5914a57d7fe5b543b7010d7051865400adc47c590e33ae6f56b7131183e0a6
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/CHANGELOG.md
CHANGED
|
@@ -14,6 +14,7 @@ Released: [Place date of release here]
|
|
|
14
14
|
* **global**: New extended value modifier: `@stdin:chomp` reads stdin and removes `\n`.
|
|
15
15
|
* `config`: New option: `parser` allows definition of default parser for extended values when expecting a `Hash` or `Array` type.
|
|
16
16
|
* `orchestrator`: Commands now takes option `query`.
|
|
17
|
+
* `aoc`: The admin command for `node` now support nodes owned by admin, so that secret is no more necessary.
|
|
17
18
|
|
|
18
19
|
### Issues Fixed
|
|
19
20
|
|
|
@@ -23,8 +24,10 @@ Released: [Place date of release here]
|
|
|
23
24
|
### Breaking Changes
|
|
24
25
|
|
|
25
26
|
* `aoc`: Option `package_folder` is now a Hash instead of formatted String.
|
|
27
|
+
* `aoc`: Deprecated option `scope`. It is selected from the command directly. For `bearer_token --scope=admin:all`, now use: `admin bearer_token`.
|
|
26
28
|
* `server`: By default, SSH option `use_agent` is now `false`.
|
|
27
29
|
* `config`: Removed option `use_product`, replaced with prefix `product:` of option `ascp_path`.
|
|
30
|
+
* `config`: Secret lookup is no more automatic, activate setting option `secret` to `PRESET`.
|
|
28
31
|
* `faspex5`: Removed deprecated (4.18) command in `admin`: `resource`, use resource name as command directly in `admin`.
|
|
29
32
|
* `preview`: Replaced gem `mimemagic` with `marcel`.
|
|
30
33
|
* **global**: Extended value modifier `@stdbin:` is replaced with `@stdin:bin`.
|
data/CONTRIBUTING.md
CHANGED
|
@@ -107,7 +107,7 @@ A few macros and environment variables control certain aspects of the build:
|
|
|
107
107
|
|
|
108
108
|
| Environment variable | Description |
|
|
109
109
|
|-----------------------------|-----------------------------------------------------|
|
|
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
113
|
| `ENABLE_COVERAGE` | Enable test coverage analysis when set. |
|
|
@@ -118,7 +118,7 @@ These can be set either as environment variables or directly on the `rake` comma
|
|
|
118
118
|
|
|
119
119
|
> [!NOTE]
|
|
120
120
|
> Environment variables `ASPERA_CLI_*` are typically set in the user’s shell profile for development.
|
|
121
|
-
> Others are intended for
|
|
121
|
+
> Others are intended for use on the command line.
|
|
122
122
|
|
|
123
123
|
To use the CLI directly from the development environment, add this to your shell profile (adapt the real path):
|
|
124
124
|
|
|
@@ -157,11 +157,11 @@ Refer to <tests/README.md>.
|
|
|
157
157
|
|
|
158
158
|
## Build
|
|
159
159
|
|
|
160
|
-
The gem is built with:
|
|
160
|
+
The unsigned gem is built with:
|
|
161
161
|
|
|
162
162
|
```bash
|
|
163
163
|
bundle install
|
|
164
|
-
bundle exec rake
|
|
164
|
+
bundle exec rake unsigned
|
|
165
165
|
```
|
|
166
166
|
|
|
167
167
|
If you don't want to install optional gems:
|
|
@@ -183,7 +183,7 @@ Its path must be set using environment variable `SIGNING_KEY`.
|
|
|
183
183
|
The gem is signed with the public certificate found in `certs` and the private key specified by `SIGNING_KEY` (kept secret by the maintainer).
|
|
184
184
|
|
|
185
185
|
```bash
|
|
186
|
-
bundle exec rake
|
|
186
|
+
bundle exec rake SIGNING_KEY=/path/to/vault/gem-private_key.pem
|
|
187
187
|
```
|
|
188
188
|
|
|
189
189
|
Refer to <certs/README.md>.
|
|
@@ -214,7 +214,16 @@ bundle exec rake -T ^binary:
|
|
|
214
214
|
|
|
215
215
|
## Release
|
|
216
216
|
|
|
217
|
-
###
|
|
217
|
+
### Branching Strategy
|
|
218
|
+
|
|
219
|
+
This project uses a single `main` branch for development. 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
|
+
|
|
221
|
+
Feature development and bug fixes can be done either:
|
|
222
|
+
|
|
223
|
+
- Directly on `main` for small changes
|
|
224
|
+
- Via feature branches with pull requests for larger changes
|
|
225
|
+
|
|
226
|
+
### Checklist Before a New Release
|
|
218
227
|
|
|
219
228
|
When preparing for a new release, do the following:
|
|
220
229
|
|
|
@@ -224,31 +233,64 @@ When preparing for a new release, do the following:
|
|
|
224
233
|
bundle exec rake test:run
|
|
225
234
|
```
|
|
226
235
|
|
|
227
|
-
-
|
|
236
|
+
- Verify that the container builds successfully (using the beta version):
|
|
228
237
|
|
|
229
238
|
```bash
|
|
230
239
|
export GEM_VERSION=$(env -u GEM_VERSION rake tools:version).$(date +%Y%m%d%H%M)
|
|
240
|
+
bundle exec rake container:build
|
|
241
|
+
bundle exec rake container:test
|
|
231
242
|
```
|
|
232
243
|
|
|
233
|
-
|
|
244
|
+
### Automated Release Process
|
|
234
245
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
246
|
+
Releases are triggered via the GitHub Actions UI using the **Release** workflow (`.github/workflows/release.yml`).
|
|
247
|
+
|
|
248
|
+
To create a release:
|
|
249
|
+
|
|
250
|
+
1. Navigate to **Actions** > **Release** in the GitHub repository
|
|
251
|
+
2. Click **Run workflow**
|
|
252
|
+
3. Optionally specify:
|
|
253
|
+
- **Release version**: The version to release. If left empty, uses the current version from `version.rb` without the `.pre` suffix.
|
|
254
|
+
- **Next development version**: The next version to prepare for. If left empty, auto-increments the minor version. The `.pre` suffix is added automatically.
|
|
255
|
+
4. Click **Run workflow**
|
|
256
|
+
|
|
257
|
+
The workflow automatically:
|
|
258
|
+
|
|
259
|
+
1. Updates `version.rb` with the release version
|
|
260
|
+
2. Rebuilds documentation (PDF manual, README)
|
|
261
|
+
3. Commits the changes
|
|
262
|
+
4. Creates and pushes the release tag
|
|
263
|
+
5. Triggers the deploy workflow to publish to [rubygems.org](https://rubygems.org/gems/aspera-cli)
|
|
264
|
+
6. Updates `version.rb` to the next development version with `.pre` suffix
|
|
265
|
+
7. Commits and pushes the version bump
|
|
266
|
+
|
|
267
|
+
### Manual Release Process (Alternative)
|
|
268
|
+
|
|
269
|
+
If needed, releases can still be done manually:
|
|
270
|
+
|
|
271
|
+
- Update the version in `lib/aspera/cli/version.rb` (remove `.pre` suffix)
|
|
272
|
+
|
|
273
|
+
- Build the PDF manual in `pkg`:
|
|
274
|
+
|
|
275
|
+
```shell
|
|
276
|
+
bundle exec rake doc:build
|
|
238
277
|
```
|
|
239
278
|
|
|
240
|
-
|
|
279
|
+
- Build the signed `.gem` in `pkg`:
|
|
241
280
|
|
|
242
|
-
|
|
281
|
+
```shell
|
|
282
|
+
bundle exec rake SIGNING_KEY=/path/to/vault/gem-private_key.pem
|
|
283
|
+
```
|
|
243
284
|
|
|
244
|
-
-
|
|
285
|
+
- Create the release version tag and push it to GitHub:
|
|
245
286
|
|
|
246
|
-
|
|
287
|
+
```shell
|
|
288
|
+
bundle exec rake release_tag
|
|
289
|
+
```
|
|
247
290
|
|
|
248
|
-
|
|
291
|
+
This will trigger the action `.github/workflows/deploy.yml`, which builds the gem file and pushes it to RubyGems.
|
|
249
292
|
|
|
250
|
-
|
|
251
|
-
- Then runs `gem push`.
|
|
293
|
+
- After release, update `version.rb` to the next development version with `.pre` suffix
|
|
252
294
|
|
|
253
295
|
## Long‑Term Implementation and Delivery Improvements
|
|
254
296
|
|