Skip to content

Commit ec38851

Browse files
authored
Merge pull request #38 from brianloyal/main
v1.13.0
2 parents 0ac2def + 68a6d58 commit ec38851

File tree

178 files changed

+397
-42049
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

178 files changed

+397
-42049
lines changed

.gitlab-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ cfn-lint:
3333
- pip install -U cfn-lint
3434
- pip freeze
3535
script:
36-
- cfn-lint -I infrastructure/cloudformation/*cfn*.yaml -i W3002
36+
- cfn-lint -I infrastructure/cloudformation/*cfn*.yaml -i W3002 -i E1019 -i W1031
3737

3838
cfn-nag:
3939
image:

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
---
99

10+
## [1.13.0] - 2025-03-14
11+
12+
### 1.13.0 Update
13+
14+
- Remove CodeCommit dependency
15+
16+
### 1.13.0 Fixed
17+
18+
- Resolve various cfn-lint issues
19+
- Update OpenFold dockerfile
20+
21+
---
22+
1023
## [1.12.7] - 2024-03-14
1124

1225
### 1.12.7 Fixed
1326

1427
- Updated S3 location for reference data
28+
- Added missing script to download ESM parameters
1529

1630
---
1731

README.md

Lines changed: 8 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,10 @@
1313
4.2. [AlphaFold](#42-alphafold)
1414
4.3. [OpenFold](#43-openfold)
1515
4.4. [OmegaFold](#44-omegafold)
16-
4.5. [RFDesign](#45-rfdesign)
17-
4.6. [ESMFold](#46-esmfold)
18-
4.7. [ProteinMPNN](#47-proteinmpnn)
19-
4.8. [DiffDock](#48-diffdock)
20-
4.9. [RFDiffusion](#49-rfdiffusion)
21-
4.10. [NextFlow](#410-nextflow)
16+
4.5. [ESMFold](#46-esmfold)
17+
4.6. [ProteinMPNN](#47-proteinmpnn)
18+
4.7. [DiffDock](#48-diffdock)
19+
4.8. [RFDiffusion](#49-rfdiffusion)
2220
5. [Architecture Details](#5-architecture-details)
2321
5.1. [Stack Creation Details](#51-stack-creation-details)
2422
5.2. [Cost](#52-cost)
@@ -179,29 +177,7 @@ The OmegaFold citation is
179177
}
180178
```
181179

182-
### 4.5. RFDesign
183-
184-
Commit [bba6992283de63faba6ff727bb4bc68327a5356c](https://github.com/RosettaCommons/RFDesign/commit/bba6992283de63faba6ff727bb4bc68327a5356c) from November 21, 2022.
185-
186-
Please visit [https://github.com/RosettaCommons/RFDesign](https://github.com/RosettaCommons/RFDesign) for more information about the RFDesign hallucinate and inpainting algorithms.
187-
188-
The RFDesign citation is
189-
190-
```text
191-
@article{RFDesign,
192-
author = {Jue Wang, Sidney Lisanza, David Juergens, Doug Tischer, Ivan Anishchenko, Minkyung Baek, Joseph L. Watson, Jung Ho Chun, Lukas F. Milles, Justas Dauparas, Marc Expòsit, Wei Yang, Amijai Saragovi, Sergey Ovchinnikov, and David Baker},
193-
title = {Deep learning methods for designing proteins scaffolding functional sites},
194-
elocation-id = {2021.11.10.468128},
195-
year = {2022},
196-
doi = {10.1101/2021.11.10.468128},
197-
publisher = {bioRxiv},
198-
URL = {https://www.biorxiv.org/content/early/2022/07/22/2022.07.21.500999},
199-
eprint = {https://www.biorxiv.org/content/10.1101/2021.11.10.468128v2.full.pdf},
200-
journal = {bioRxiv}
201-
}
202-
```
203-
204-
### 4.6. ESMFold
180+
### 4.5. ESMFold
205181

206182
Commit [74d25cba46a7fd9a9f557ff41ed1d8e9f131aac3](https://github.com/facebookresearch/esm/commit/74d25cba46a7fd9a9f557ff41ed1d8e9f131aac3) from November 26, 2023.
207183

@@ -219,7 +195,7 @@ The ESMFold citation is
219195
}
220196
```
221197

222-
### 4.7. ProteinMPNN
198+
### 4.6. ProteinMPNN
223199

224200
Commit [be1d37b6699dcd2283ab5b6fc8cc88774e2c80e9](https://github.com/dauparas/ProteinMPNN/commit/be1d37b6699dcd2283ab5b6fc8cc88774e2c80e9) from March 24, 2023.
225201

@@ -240,7 +216,7 @@ The ProteinMPNN citation is
240216
}
241217
```
242218

243-
### 4.8. DiffDock
219+
### 4.7. DiffDock
244220

245221
Commit [3c3c728cf2e444cf8df45b58067604d982159471](https://github.com/gcorso/DiffDock/commit/3c3c728cf2e444cf8df45b58067604d982159471) from March 27, 2023.
246222

@@ -257,7 +233,7 @@ The DiffDock citation is
257233
}
258234
```
259235

260-
### 4.9. RFDiffusion
236+
### 4.8. RFDiffusion
261237

262238
Commit [5606075d45bd23aa60785024b203ed6b0f6d2cd0](https://github.com/RosettaCommons/RFdiffusion/commit/5606075d45bd23aa60785024b203ed6b0f6d2cd0) from June 28, 2023.
263239

@@ -276,10 +252,6 @@ The RFDiffusion citation is
276252
}
277253
```
278254

279-
### 4.10. NextFlow
280-
281-
Please visit [https://www.nextflow.io](https://www.nextflow.io) for more information about the RFDiffusion algorithm. For a fully-managed NextFlow solution, you may also be interested in [Amazon Omics Workflows](https://docs.aws.amazon.com/omics/latest/dev/workflows.html).
282-
283255
-----
284256

285257
## 5. Architecture Details

infrastructure/cloudformation/batch-protein-folding-cfn-container.yaml

Lines changed: 34 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,14 @@ Parameters:
99
Description: Name of the application, if applicable
1010
Type: String
1111
Default: "Unknown"
12-
Environment:
13-
Description: Leave this as "main" unless you are testing a pre-release versions of this architecture.
14-
Type: String
15-
Default: main
16-
AllowedValues:
17-
- main
18-
- dev
1912
DownloadFsxData:
2013
Description: Automatically populate FSx for Lustre file system with model parameters and sequence databases?
2114
Type: String
2215
Default: "Y"
2316
AllowedValues: [Y, N]
2417
CodeRepoS3BucketName:
2518
Description: S3 Bucket Name to retrieve code zip
26-
Type: String
19+
Type: String
2720
Default: "aws-hcls-ml"
2821
S3BucketARN:
2922
Description: S3 Bucket ARN
@@ -35,41 +28,12 @@ Parameters:
3528

3629
Conditions:
3730
DownloadFsxDataCondition:
38-
"Fn::Equals": [Ref: "DownloadFsxData", "Y"]
31+
"Fn::Equals": [Ref: "DownloadFsxData", "Y"]
3932

4033
Resources:
41-
4234
##################################################
4335
# Container Services
4436
##################################################
45-
CodeRepository:
46-
Type: AWS::CodeCommit::Repository
47-
Properties:
48-
Code:
49-
BranchName: "main"
50-
S3:
51-
Bucket: !Ref CodeRepoS3BucketName
52-
Key: !Sub "${Environment}/batch-protein-folding.zip"
53-
RepositoryDescription: Code for running batch protein folding on AWS
54-
RepositoryName:
55-
!Join [
56-
"-",
57-
[
58-
"batch-protein-folding",
59-
"code-repo",
60-
!Select [
61-
4,
62-
!Split ["-", !Select [2, !Split ["/", !Ref "AWS::StackId"]]],
63-
],
64-
],
65-
]
66-
Tags:
67-
- Key: Application
68-
Value: !Ref ApplicationName
69-
- Key: StackId
70-
Value: !Ref AWS::StackId
71-
- Key: SolutionId
72-
Value: SO9164
7337

7438
DownloadContainerRegistry:
7539
Type: AWS::ECR::Repository
@@ -82,9 +46,9 @@ Resources:
8246
- Key: Application
8347
Value: !Ref ApplicationName
8448
- Key: StackId
85-
Value: !Ref "AWS::StackId"
49+
Value: !Ref "AWS::StackId"
8650
- Key: SolutionId
87-
Value: SO9164
51+
Value: SO9164
8852

8953
CodeBuildRole:
9054
Type: AWS::IAM::Role
@@ -126,29 +90,18 @@ Resources:
12690
["arn:aws:s3:::codepipeline", !Ref "AWS::Region", "*"],
12791
]
12892
- !Sub "${S3BucketARN}*"
129-
- !Sub "arn:aws:s3:::${CodeRepoS3BucketName}/*"
13093
- Effect: Allow
13194
Action:
13295
- s3:GetObject
13396
- s3:GetObjectVersion
13497
- s3:GetBucketAcl
13598
- s3:GetBucketLocation
99+
- s3:ListBucket
100+
- s3:ListBucketVersions
136101
Resource:
137-
- !Sub "arn:aws:s3:::${CodeRepoS3BucketName}*"
138-
- Effect: Allow
139-
Action:
140-
- codecommit:GitPull
141-
Resource:
142-
- Fn::Join:
143-
[
144-
":",
145-
[
146-
"arn:aws:codecommit",
147-
!Ref "AWS::Region",
148-
!Ref "AWS::AccountId",
149-
!GetAtt CodeRepository.Name,
150-
],
151-
]
102+
- !Sub "arn:aws:s3:::${CodeRepoS3BucketName}"
103+
- !Sub "arn:aws:s3:::${CodeRepoS3BucketName}/*"
104+
152105
- Effect: Allow
153106
Action:
154107
- codebuild:CreateReportGroup
@@ -251,7 +204,7 @@ Resources:
251204
- Effect: Allow
252205
Action:
253206
- codebuild:StartBuild
254-
Resource: "*"
207+
Resource: "*"
255208
ManagedPolicyArns:
256209
- "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
257210

@@ -304,11 +257,11 @@ Resources:
304257
- Key: StackId
305258
Value: !Ref "AWS::StackId"
306259
- Key: SolutionId
307-
Value: SO9164
260+
Value: SO9164
308261

309262
##################################################
310263
# Delete container repo on stack deletion
311-
##################################################
264+
##################################################
312265
DeleteContainerRepoLambdaExecutionRole:
313266
Type: AWS::IAM::Role
314267
Properties:
@@ -326,10 +279,10 @@ Resources:
326279
PolicyDocument:
327280
Version: "2012-10-17"
328281
Statement:
329-
- Effect: Allow
330-
Action:
331-
- ecr:DeleteRepository
332-
Resource: "*"
282+
- Effect: Allow
283+
Action:
284+
- ecr:DeleteRepository
285+
Resource: "*"
333286
ManagedPolicyArns:
334287
- "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
335288
- "arn:aws:iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole"
@@ -380,7 +333,7 @@ Resources:
380333
Role:
381334
Fn::GetAtt: DeleteContainerRepoLambdaExecutionRole.Arn
382335
Runtime: python3.10
383-
Timeout: 10
336+
Timeout: 10
384337
Tags:
385338
- Key: Application
386339
Value: !Ref ApplicationName
@@ -389,9 +342,9 @@ Resources:
389342
- Key: SolutionId
390343
Value: SO9164
391344

392-
##################################################
393-
# Create Download Container
394-
##################################################
345+
##################################################
346+
# Create Download Container
347+
##################################################
395348

396349
CodeBuildProjectDownload:
397350
Type: AWS::CodeBuild::Project
@@ -406,32 +359,30 @@ Resources:
406359
- Name: IMAGE_TAG
407360
Value: latest
408361
- Name: IMAGE_REPO_NAME
409-
Value: !Ref DownloadContainerRegistry
362+
Value: !Ref DownloadContainerRegistry
410363
- Name: ACCOUNT_ID
411364
Value: !Ref "AWS::AccountId"
412365
- Name: BUILD_CONTEXT
413-
Value: infrastructure/docker/download
366+
Value: infrastructure/docker/download
414367
- Name: WAIT_CONDITION_HANDLE
415-
Value: !Ref CodeBuildWaitHandle
368+
Value: !Ref CodeBuildWaitHandle
416369
Image: aws/codebuild/standard:6.0
417370
ImagePullCredentialsType: CODEBUILD
418371
PrivilegedMode: true
419372
Type: LINUX_CONTAINER
420373
ResourceAccessRole: !GetAtt CodeBuildRole.Arn
421374
ServiceRole: !GetAtt CodeBuildRole.Arn
422375
Source:
423-
BuildSpec: infrastructure/docker/download/buildspec_with_wait.yaml
424-
GitCloneDepth: 1
425-
Location: !GetAtt CodeRepository.CloneUrlHttp
426-
Type: CODECOMMIT
427-
SourceVersion: refs/heads/main
376+
BuildSpec: infrastructure/docker/buildspec.yaml
377+
Location: !Sub "${CodeRepoS3BucketName}/main/batch-protein-folding.zip"
378+
Type: S3
428379
Tags:
429380
- Key: Application
430381
Value: !Ref ApplicationName
431382
- Key: StackId
432-
Value: !Ref "AWS::StackId"
383+
Value: !Ref "AWS::StackId"
433384
- Key: SolutionId
434-
Value: SO9164
385+
Value: SO9164
435386

436387
StartDownloadContainerBuild:
437388
Type: Custom::ResourceForBuildingContainer
@@ -449,7 +400,7 @@ Resources:
449400
CodeBuildWaitCondition:
450401
Type: AWS::CloudFormation::WaitCondition
451402
Condition: DownloadFsxDataCondition
452-
DependsOn:
403+
DependsOn:
453404
- CodeBuildProjectDownload
454405
Properties:
455406
Handle: !Ref CodeBuildWaitHandle
@@ -462,13 +413,9 @@ Resources:
462413
ServiceToken:
463414
Fn::GetAtt: DeleteContainerRepoLambda.Arn
464415
ContainerRepo:
465-
Ref: DownloadContainerRegistry
416+
Ref: DownloadContainerRegistry
466417

467418
Outputs:
468-
CodeRepositoryURI:
469-
Description: Code repository URI
470-
Value:
471-
Fn::GetAtt: CodeRepository.CloneUrlHttp
472419
CodeBuildEncryptionKey:
473420
Description: Encryption key for CodeBuild jobs
474421
Value:
@@ -480,16 +427,16 @@ Outputs:
480427
StartCodeBuildLambdaArn:
481428
Description: Lambda function for building container repos
482429
Value:
483-
Fn::GetAtt: StartCodeBuildLambda.Arn
430+
Fn::GetAtt: StartCodeBuildLambda.Arn
484431
DeleteContainerRepoLambdaArn:
485432
Description: Lambda function for deleting container repos
486433
Value:
487-
Fn::GetAtt: DeleteContainerRepoLambda.Arn
434+
Fn::GetAtt: DeleteContainerRepoLambda.Arn
488435
DownloadContainerRegistryURI:
489436
Description: URI of the download container
490437
Value:
491-
Fn::GetAtt: DownloadContainerRegistry.RepositoryUri
438+
Fn::GetAtt: DownloadContainerRegistry.RepositoryUri
492439
DownloadContainerRegistryName:
493440
Description: Name of the download container repository
494441
Value:
495-
Ref: DownloadContainerRegistry
442+
Ref: DownloadContainerRegistry

infrastructure/cloudformation/batch-protein-folding-cfn-download.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ Resources:
8181
"/scripts/download_uniprot.sh",
8282
"/scripts/download_uniref90.sh",
8383
"/scripts/download_omegafold_params.sh",
84-
"/scripts/download_rfdesign_params.sh",
8584
"/scripts/download_diffdock_params.sh",
8685
"/scripts/download_rfdiffusion_params.sh"
8786
]

0 commit comments

Comments
 (0)