Skip to content

Commit

Permalink
Rename Tower -> Seqera Platform in docs and log messages (#4727) [ci …
Browse files Browse the repository at this point in the history
…skip]



Signed-off-by: Ben Sherman <bentshermann@gmail.com>
  • Loading branch information
bentsherman committed Feb 9, 2024
1 parent 279c410 commit 7caffef
Show file tree
Hide file tree
Showing 13 changed files with 35 additions and 35 deletions.
4 changes: 2 additions & 2 deletions docs/cli.md
Expand Up @@ -1267,7 +1267,7 @@ The `run` command is used to execute a local pipeline script or remote pipeline
: Create workflow execution timeline.

`-with-tower` (`https://api.tower.nf`)
: Monitor workflow execution with [Tower](https://cloud.tower.nf/).
: Monitor workflow execution with [Seqera Platform](https://cloud.tower.nf/) (formerly Tower Cloud).

`-with-trace` (`trace-<timestamp>.txt`)
: Create workflow execution trace file.
Expand Down Expand Up @@ -1331,7 +1331,7 @@ The `run` command is used to execute a local pipeline script or remote pipeline
$ nextflow run main.nf -entry workflow_A
```

- Execute a pipeline with integrated monitoring in [Tower](https://cloud.tower.nf).
- Execute a pipeline with integrated monitoring in [Seqera Platform](https://cloud.tower.nf).

```console
$ nextflow run nextflow-io/hello -with-tower
Expand Down
14 changes: 7 additions & 7 deletions docs/config.md
Expand Up @@ -1513,25 +1513,25 @@ The following settings are available:

### Scope `tower`

The `tower` scope controls the settings for the [Nextflow Tower](https://tower.nf) monitoring and tracing service.
The `tower` scope controls the settings for the [Seqera Platform](https://tower.nf) (formerly Tower Cloud).

The following settings are available:

`tower.accessToken`
: The unique access token specific to your account on an instance of Tower.
: The unique access token specific to your account on an instance of Seqera Platform.

Your `accessToken` can be obtained from your Tower instance in the [Tokens page](https://tower.nf/tokens).
Your `accessToken` can be obtained from your Seqera Platform instance in the [Tokens page](https://tower.nf/tokens).

`tower.enabled`
: When `true` Nextflow sends the workflow tracing and execution metrics to the Nextflow Tower service (default: `false`).
: When `true` Nextflow sends the workflow tracing and execution metrics to Seqera Platform (default: `false`).

`tower.endpoint`
: The endpoint of your Tower deployment (default: `https://tower.nf`).
: The endpoint of your Seqera Platform instance (default: `https://tower.nf`).

`tower.workspaceId`
: The ID of the Tower workspace where the run should be added (default: the launching user personal workspace).
: The ID of the Seqera Platform workspace where the run should be added (default: the launching user personal workspace).

The Tower workspace ID can also be specified using the environment variable `TOWER_WORKSPACE_ID` (config file has priority over the environment variable).
The workspace ID can also be specified using the environment variable `TOWER_WORKSPACE_ID` (config file has priority over the environment variable).

(config-trace)=

Expand Down
2 changes: 1 addition & 1 deletion docs/developer/nextflow.trace.md
Expand Up @@ -14,4 +14,4 @@ Some classes may be excluded from the above diagram for brevity.

## Notes

The `TraceObserver` interface defines a set of hooks into the workflow execution, such as when a workflow starts and completes, when a task starts and completes, and when an output file is published. The `Session` maintains a list of all observers and triggers each hook when the corresponding event occurs. Implementing classes can use these hooks to perform custom behaviors. In fact, this interface is used to implemented several core features, including the various execution reports, DAG renderer, and the integration with Nextflow Tower.
The `TraceObserver` interface defines a set of hooks into the workflow execution, such as when a workflow starts and completes, when a task starts and completes, and when an output file is published. The `Session` maintains a list of all observers and triggers each hook when the corresponding event occurs. Implementing classes can use these hooks to perform custom behaviors. In fact, this interface is used to implemented several core features, including the various execution reports, DAG renderer, and the integration with Seqera Platform.
2 changes: 1 addition & 1 deletion docs/google.md
Expand Up @@ -236,7 +236,7 @@ process.scratch = false
tower.accessToken = '<YOUR ACCESS TOKEN>'
```

The [Tower](https://cloud.tower.nf) access token is optional, but it enables higher API rate limits for the {ref}`wave-page` service required by Fusion.
The [Seqera Platform](https://cloud.tower.nf) access token is optional, but it enables higher API rate limits for the {ref}`wave-page` service required by Fusion.

By default, Fusion mounts a local SSD disk to the VM at `/tmp`, using a machine type that can attach local SSD disks. If you specify your own machine type or machine series, they should be able to attach local SSD disks, otherwise the job scheduling will fail.

Expand Down
8 changes: 4 additions & 4 deletions docs/plugins.md
Expand Up @@ -8,13 +8,13 @@ Nextflow has a plugin system that allows the use of extensible components that a

The following functionalities are provided via plugin components, and they make part of the Nextflow *core* plugins:

- `nf-amazon`: Support for Amazon cloud.
- `nf-azure`: Support for Azure cloud.
- `nf-amazon`: Support for Amazon Web Services.
- `nf-azure`: Support for Microsoft Azure.
- `nf-cloudcache`: Support for the cloud cache (see `NXF_CLOUDCACHE_PATH` under {ref}`config-env-vars`).
- `nf-console`: Implement Nextflow [REPL console](https://www.nextflow.io/blog/2015/introducing-nextflow-console.html).
- `nf-ga4gh`: Support [GA4GH APIs](https://www.ga4gh.org/).
- `nf-google`: Support for Google cloud.
- `nf-tower`: Support for [Tower](https://tower.nf) cloud platform.
- `nf-google`: Support for Google Cloud.
- `nf-tower`: Support for [Seqera Platform](https://tower.nf) (formerly Tower Cloud).
- `nf-wave`: Support for [Wave containers](https://seqera.io/wave/) service.


Expand Down
2 changes: 1 addition & 1 deletion docs/secrets.md
Expand Up @@ -69,5 +69,5 @@ The secrets are made available in the process context running the command script
:::

:::{note}
This feature is only available when using the local or grid executors (Slurm, Grid Engine, etc). The AWS Batch executor allows the use of secrets when deploying the pipeline execution via [Nextflow Tower](https://seqera.io/blog/pipeline-secrets-secure-handling-of-sensitive-information-in-tower/).
This feature is only available when using the local or grid executors (Slurm, Grid Engine, etc). The AWS Batch executor allows the use of secrets when deploying the pipeline execution via [Seqera Platform](https://seqera.io/blog/pipeline-secrets-secure-handling-of-sensitive-information-in-tower/).
:::
14 changes: 7 additions & 7 deletions docs/wave.md
Expand Up @@ -38,7 +38,7 @@ tower {
```

:::{note}
The Tower access token is not mandatory, but it is recommended in order to access private container repositories and pull public containers without being affected by service rate limits. Credentials should be made available to Wave using the [credentials manager](https://help.tower.nf/latest/credentials/overview) in Tower.
The Seqera Platform access token is not mandatory, but it is recommended in order to access private container repositories and pull public containers without being affected by service rate limits. Credentials should be made available to Wave using the [credentials manager](https://docs.seqera.io/platform/latest/credentials/overview) in Seqera Platform.
:::

## Use cases
Expand All @@ -47,9 +47,9 @@ The Tower access token is not mandatory, but it is recommended in order to acces

### Authenticate private repositories

Wave allows the use of private repositories in your Nextflow pipelines. The repository access keys must be provided in the form of [Tower credentials](https://help.tower.nf/latest/credentials/overview/).
Wave allows the use of private repositories in your Nextflow pipelines. The repository access keys must be provided in the form of [Seqera Platform credentials](https://docs.seqera.io/platform/latest/credentials/overview/).

Once the credentials have been created, simply specify your [Tower account access token](https://help.tower.nf/22.2/api/overview/#authentication) in your pipeline configuration file. If the credentials were created in a Tower organization workspace, specify the workspace ID as well in the config file as shown below:
Once the credentials have been created, simply specify your [personal access token](https://docs.seqera.io/platform/23.3.0/api/overview#authentication) in your pipeline configuration file. If the credentials were created in a Seqera Platform organization workspace, specify the workspace ID as well in the config file as shown below:

```groovy
tower {
Expand Down Expand Up @@ -159,7 +159,7 @@ In the above configuration replace `docker.io/user/repo` with a repository of yo
should be uploaded.

:::{note}
When using a private repository, the repository access keys must be provider via Tower credentials manager (see {ref}`above <wave-authenticate-private-repos>`).
When using a private repository, the repository access keys must be provided via the Seqera Platform credentials manager (see {ref}`above <wave-authenticate-private-repos>`).

Moreover the access to the repository must be granted in the compute nodes by using the command `singularity remote login <registry>`.
Please see Singularity documentation for further details.
Expand All @@ -178,7 +178,7 @@ wave.build.cacheRepository = 'example.com/your/cache-repo'

The first repository is used to store the built container images. The second one is used to store the individual image layers for caching purposes.

The repository access keys must be provided as Tower credentials (see
The repository access keys must be provided as Seqera Platform credentials (see
[Authenticate private repositories](#authenticate-private-repositories) above).

### Run pipelines using Fusion file system
Expand Down Expand Up @@ -208,10 +208,10 @@ It is also suggested to specify a custom cache repository via the setting `wave.
container freeze mode, the container repository authentication needs to be managed by the underlying infrastructure.

`wave.build.repository`
: The container repository where images built by Wave are uploaded (note: the corresponding credentials must be provided in your Nextflow Tower account).
: The container repository where images built by Wave are uploaded (note: the corresponding credentials must be provided in your Seqera Platform account).

`wave.build.cacheRepository`
: The container repository used to cache image layers built by the Wave service (note: the corresponding credentials must be provided in your Nextflow Tower account).
: The container repository used to cache image layers built by the Wave service (note: the corresponding credentials must be provided in your Seqera Platform account).

`wave.build.conda.basePackages`
: One or more Conda packages to be always added in the resulting container (default: `conda-forge::procps-ng`).
Expand Down
Expand Up @@ -160,7 +160,7 @@ class CmdRun extends CmdBase implements HubOptions {
launcher.options.ansiLog = value
}

@Parameter(names = ['-with-tower'], description = 'Monitor workflow execution with Seqera Tower service')
@Parameter(names = ['-with-tower'], description = 'Monitor workflow execution with Seqera Platform (formerly Tower Cloud)')
String withTower

@Parameter(names = ['-with-wave'], hidden = true)
Expand Down
Expand Up @@ -268,7 +268,7 @@ class TowerClient implements TraceObserver {
*/
@Override
void onFlowCreate(Session session) {
log.debug "Creating Tower observer -- endpoint=$endpoint; requestInterval=$requestInterval; aliveInterval=$aliveInterval; maxRetries=$maxRetries; backOffBase=$backOffBase; backOffDelay=$backOffDelay"
log.debug "Creating Seqera Platform observer -- endpoint=$endpoint; requestInterval=$requestInterval; aliveInterval=$aliveInterval; maxRetries=$maxRetries; backOffBase=$backOffBase; backOffDelay=$backOffDelay"

this.session = session
this.aggregator = new ResourcesAggregator(session)
Expand All @@ -293,7 +293,7 @@ class TowerClient implements TraceObserver {
final ret = parseTowerResponse(resp)
this.workflowId = ret.workflowId
if( !workflowId )
throw new AbortOperationException("Invalid Tower response - Missing workflow Id")
throw new AbortOperationException("Invalid Seqera Platform API response - Missing workflow Id")
if( ret.message )
log.warn(ret.message.toString())

Expand Down Expand Up @@ -367,7 +367,7 @@ class TowerClient implements TraceObserver {
final payload = parseTowerResponse(resp)
this.watchUrl = payload.watchUrl
this.sender = Threads.start('Tower-thread', this.&sendTasks0)
final msg = "Monitor the execution with Nextflow Tower using this URL: ${watchUrl}"
final msg = "Monitor the execution with Seqera Platform using this URL: ${watchUrl}"
log.info(LoggerHelper.STICKY, msg)
}

Expand All @@ -379,7 +379,7 @@ class TowerClient implements TraceObserver {
? env.get('TOWER_ACCESS_TOKEN')
: session.config.navigate('tower.accessToken', env.get('TOWER_ACCESS_TOKEN'))
if( !token )
throw new AbortOperationException("Missing Nextflow Tower access token -- Make sure there's a variable TOWER_ACCESS_TOKEN in your environment")
throw new AbortOperationException("Missing personal access token -- Make sure there's a variable TOWER_ACCESS_TOKEN in your environment")
return token
}

Expand Down Expand Up @@ -538,7 +538,7 @@ class TowerClient implements TraceObserver {
return new Response(httpClient.responseCode, httpClient.getResponse())
}
catch( ConnectException e ) {
String msg = "Unable to connect to Tower API: ${getHostUrl(url)}"
String msg = "Unable to connect to Seqera Platform API: ${getHostUrl(url)}"
return new Response(0, msg)
}
catch (IOException e) {
Expand All @@ -556,7 +556,7 @@ class TowerClient implements TraceObserver {

String msg
if( code == 401 ) {
msg = 'Unauthorized Tower access -- Make sure you have specified the correct access token'
msg = 'Unauthorized Seqera Platform API access -- Make sure you have specified the correct access token'
}
else {
msg = parseCause(httpClient.response) ?: "Unexpected response for request $url"
Expand Down Expand Up @@ -743,7 +743,7 @@ class TowerClient implements TraceObserver {
def cause = parseCause(resp.cause)

def msg = """\
Unexpected Tower response
Unexpected Seqera Platform API response
- endpoint url: $endpoint
- status code : $resp.code
- response msg: ${resp.message}
Expand Down
Expand Up @@ -92,7 +92,7 @@ class TowerFactory implements TraceObserverFactory {

protected XAuthProvider provider(String endpoint, String accessToken) {
if (endpoint.endsWith('/'))
throw new IllegalArgumentException("Tower endpoint URL should not end with a `/` character -- offending value: $endpoint")
throw new IllegalArgumentException("Seqera Platform endpoint URL should not end with a `/` character -- offending value: $endpoint")
final refreshToken = env.get('TOWER_REFRESH_TOKEN')
return new TowerXAuth(endpoint, accessToken, refreshToken)
}
Expand Down
Expand Up @@ -125,7 +125,7 @@ class TowerJsonGenerator extends DefaultJsonGenerator {
final result = seq.toString().substring(0,max)
// show only the first 100 chars in the log as a preview
final preview = result.length()>100 ? result.substring(0,100) + '(truncated)' : result
log.warn "Tower request field `$key` exceeds expected size | offending value: `${preview}`, size: ${seq.size()} (max: $max)"
log.warn "Seqera Platform request field `$key` exceeds expected size | offending value: `${preview}`, size: ${seq.size()} (max: $max)"
return result
}
return seq
Expand Down
Expand Up @@ -23,7 +23,7 @@ import nextflow.plugin.BasePlugin
import nextflow.cli.PluginExecAware
import org.pf4j.PluginWrapper
/**
* Nextflow Tower plugin
* Seqera Platform plugin
*
* @author Paolo Di Tommaso <paolo.ditommaso@gmail.com>
*/
Expand Down
Expand Up @@ -212,7 +212,7 @@ class TowerReports {
it.flush()
}
catch (Throwable e) {
log.error ("Unexpected error writing Tower report entry '${destination.toUriString()}'", e)
log.error ("Unexpected error writing report entry '${destination.toUriString()}'", e)
}
}

Expand Down

0 comments on commit 7caffef

Please sign in to comment.