|
6 | 6 | import pulumi_onepassword as onepassword |
7 | 7 | from pulumi_aws import s3 |
8 | 8 |
|
9 | | -# Create an AWS resource (S3 Bucket) |
10 | | -bucket = s3.Bucket("my-bucket") |
| 9 | +# Import existing AWS resources used by nf-core megatests |
| 10 | +# S3 bucket for Nextflow work directory (already exists) |
| 11 | +nf_core_awsmegatests_bucket = s3.Bucket( |
| 12 | + "nf-core-awsmegatests", |
| 13 | + bucket="nf-core-awsmegatests", |
| 14 | + opts=pulumi.ResourceOptions( |
| 15 | + import_="nf-core-awsmegatests", # Import existing bucket |
| 16 | + protect=True, # Protect from accidental deletion |
| 17 | + ), |
| 18 | +) |
11 | 19 |
|
12 | | -# Export the name of the bucket |
13 | | -pulumi.export("bucket_name", bucket.id) # type: ignore[attr-defined] |
| 20 | +# Export the bucket information |
| 21 | +pulumi.export( |
| 22 | + "megatests_bucket", |
| 23 | + { |
| 24 | + "name": nf_core_awsmegatests_bucket.bucket, |
| 25 | + "arn": nf_core_awsmegatests_bucket.arn, |
| 26 | + "region": "eu-west-1", |
| 27 | + }, |
| 28 | +) |
14 | 29 |
|
15 | 30 | # Configure the 1Password provider explicitly |
16 | 31 | onepassword_config = pulumi.Config("pulumi-onepassword") |
|
38 | 53 | # NOTE: We could check for tw-cli availability here, but we'll let seqerakit |
39 | 54 | # throw the appropriate error if it's missing. Seqerakit requires tw-cli to be |
40 | 55 | # installed and available in PATH. |
| 56 | +# |
| 57 | +# NOTE: Seqerakit will create and manage: |
| 58 | +# - AWS Batch compute environments and job queues |
| 59 | +# - IAM roles (ExecutionRole, FargateRole) with TowerForge prefix |
| 60 | +# - Security groups and networking resources |
| 61 | +# These are managed by Seqera Platform and should not be imported into Pulumi |
41 | 62 | seqerakit_environment = { |
42 | 63 | "TOWER_ACCESS_TOKEN": tower_access_token, |
43 | 64 | "ORGANIZATION_NAME": "nf-core", |
|
0 commit comments