-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #129 from ENCODE-DCC/dev
v1.6.3
- Loading branch information
Showing
8 changed files
with
181 additions
and
88 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,41 +1 @@ | ||
## Configuration for S3 storage access | ||
|
||
1. Sign up for an [AWS account](https://aws.amazon.com/account/). | ||
|
||
2. Make sure that your account has permission on two services (S3 and EC2). | ||
- Admin: full permission on both EC2 and output S3 bucket. | ||
- User: read/write permission on the output S3 bucket. | ||
|
||
3. Configure your AWS CLI. Enter key and password obtained from your account's IAM. | ||
```bash | ||
$ aws configure | ||
``` | ||
|
||
## Configuration for AWS backend | ||
|
||
Please follow the above instruction for S3 storage access. | ||
|
||
1. Click on [this]( | ||
https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=GenomicsVPC&templateURL=https://aws-quickstart.s3.amazonaws.com/quickstart-aws-vpc/templates/aws-vpc.template.yaml) to create a new AWS VPC. Make sure that the region on top right corner of the console page matches with your region of interest. Click on `Next` and then `Next` again. Agree to `Capabililties`. Click on `Create stack`. | ||
|
||
2. Choose all available zones in `Availability Zones`. For example, if your region is `us-east-2`, then you will see `us-east-2a`, `us-east-2b` and `us-east-2c`. Choose all. | ||
|
||
3. Click on [this]( | ||
https://console.aws.amazon.com/cloudformation/home?#/stacks/new?stackName=gwfcore&templateURL=https://aws-genomics-workflows.s3.amazonaws.com/v3.0.6.1/templates/gwfcore/gwfcore-root.template.yaml) to create a new AWS Batch. Make sure that the region on top right corner of the console page matches with your region of interest. Click on `Next`. | ||
|
||
4. There are several required parameters to be specified on this page | ||
- `S3 Bucket name`: S3 bucket name to store your pipeline outputs. This is not a full path for the output directory. It's just bucket's name. | ||
- `Existing Bucket?`: `True` if the above bucket already exists. | ||
- `VPC ID`: Choose the VPC `GenomicsVPC` that you just created. | ||
- `VPC Subnet IDs`: Choose two private subnets created with the above VPC. | ||
- (**IMPORTANT**) `Template Root URL`: `https://caper-aws-genomics-workflows.s3-us-west-1.amazonaws.com/src/templates`. | ||
|
||
5. Click on `Next` and then `Next` again. Agree to `Capabililties`. Click on `Create stack`. | ||
|
||
6. Go to your [AWS Batch](https://console.aws.amazon.com/batch) and click on `Job queues` in the left sidebar. Click on `default-*`. Get ARN for your batch under the key `Queue ARN`. This ARN will be used later to create Caper server instance. | ||
|
||
|
||
|
||
## References | ||
|
||
https://docs.opendata.aws/genomics-workflows/orchestration/cromwell/cromwell-overview/ | ||
Deprecated. Please see [this](../scripts/aws_caper_server/README.md) instead. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
## Troubleshooting | ||
|
||
Run `caper debug WORKFLOW_ID` to debug/troubleshoot a workflow. | ||
|
||
|
||
### `Could not read from s3...` | ||
|
||
If you use private S3 URIs in an input JSON then you will see this error. Please don't use any private S3 URIs. Get a presigned HTTP URL of the private bucket file or use `~/.netrc` authentication instead. | ||
|
||
```javascript | ||
"failures": [ | ||
{ | ||
"causedBy": [ | ||
{ | ||
"causedBy": [ | ||
{ | ||
"message": "s3://s3.amazonaws.com/encode-processing/test_without_size_call/5826859d-d07c-4749-a2fe-802c6c6964a6/call-get_b/get_b-rc.txt", | ||
"causedBy": [] | ||
} | ||
], | ||
"message": "Could not read from s3://encode-processing/test_without_size_call/5826859d-d07c-4749-a2fe-802c6c6964a6/call-get_b/get_b-rc.txt: s3://s3.amazonaws.com/encode-processing/test_without_size_call/5826859d-d07c-4749-a2fe-802c6c6964a6/call-get_b/get_b-rc.txt" | ||
} | ||
], | ||
"message": "[Attempted 1 time(s)] - IOException: Could not read from s3://encode-processing/test_without_size_call/5826859d-d07c-4749-a2fe-802c6c6964a6/call-get_b/get_b-rc.txt: s3://s3.amazonaws.com/encode-processing/test_without_size_call/5826859d-d07c-4749-a2fe-802c6c6964a6/call-get_b/get_b-rc.txt" | ||
} | ||
], | ||
``` | ||
|
||
|
||
### `S3Exception: null (Service: S3, Status Code: 301)` | ||
|
||
If you use S3 URIs in an input JSON which are in a different region, then you will see `301 Error`. Please don't use S3 URIs out of your region. It's better to | ||
|
||
```javascript | ||
"callCaching": { | ||
"hashFailures": [ | ||
{ | ||
"causedBy": [ | ||
{ | ||
"message": "null (Service: S3, Status Code: 301, Request ID: null, Extended Request ID: MpqH6PrTGZwXu2x5pt8H38VWqnrpWWT7nzH/fZtbiEIKJkN9qrB2koEXlmXAYdvehvAfy5yQggE=)", | ||
"causedBy": [] | ||
} | ||
], | ||
"message": "[Attempted 1 time(s)] - S3Exception: null (Service: S3, Status Code: 301, Request ID: null, Extended Request ID: MpqH6PrTGZwXu2x5pt8H38VWqnrpWWT7nzH/fZtbiEIKJkN9qrB2koEXlmXAYdvehvAfy5yQggE=)" | ||
} | ||
], | ||
"allowResultReuse": false, | ||
"hit": false, | ||
"result": "Cache Miss", | ||
"effectiveCallCachingMode": "CallCachingOff" | ||
} | ||
``` | ||
|
||
|
||
### `S3Exception: null (Service: S3, Status Code: 400)` | ||
|
||
If you see `400` error then please use this shell script `./create_instance.sh` to create an instance instead of running Caper server on your laptop/machine. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
## Troubleshooting errors | ||
|
||
If you see permission errors check if the above roles are correctly configured for your service account. | ||
|
||
If you see PAPI errors and Google's HTTP endpoint deprecation warning. Remove Life Sciences API role from your service account and add it back. | ||
|
||
If you see the following error then click on your service account on `Service Account` in `IAM` of your Google project and make sure that `Enable G Suite Domain-wide Delegation` is checked. | ||
``` | ||
400 Bad Request | ||
POST https://lifesciences.googleapis.com/v2beta/projects/99884963860/locations/us-central1/operations/XXXXXXXXXXXXXXXXXXXX:cancel | ||
{ | ||
"code" : 400, | ||
"errors" : [ { | ||
"domain" : "global", | ||
"message" : "Precondition check failed.", | ||
"reason" : "failedPrecondition" | ||
} ], | ||
"message" : "Precondition check failed.", | ||
"status" : "FAILED_PRECONDITION" | ||
} | ||
``` |