1616 options :
1717 - Gamma
1818 - Prod
19- default : Gamma
2019 required : true
2120 version :
2221 description : Layer version to duplicate
23- type : number
22+ type : string
2423 required : true
2524 workflow_call :
2625 inputs :
2726 environment :
2827 description : Deployment environment
2928 type : string
30- default : Gamma
3129 required : true
3230 version :
3331 description : Layer version to duplicate
34- type : number
32+ type : string
3533 required : true
3634
3735name : Layer Deployment (GovCloud)
@@ -111,8 +109,8 @@ jobs:
111109 name : ${{ matrix.layer }}_${{ matrix.arch }}.json
112110 - name : Verify Layer Signature
113111 run : |
114- SHA=$(jq -r '.Content.CodeSha256' ${{ matrix.layer }}_${{ matrix.arch }}.json)
115- test $(openssl dgst -sha256 -binary ${{ matrix.layer }}_${{ matrix.arch }}.zip | openssl enc -base64) == $SHA && echo "SHA OK: ${SHA}" || exit 1
112+ SHA=$(jq -r '.Content.CodeSha256' ' ${{ matrix.layer }}_${{ matrix.arch }}.json' )
113+ test " $(openssl dgst -sha256 -binary ${{ matrix.layer }}_${{ matrix.arch }}.zip | openssl enc -base64)" == " $SHA" && echo "SHA OK: ${SHA}" || exit 1
116114 - name : Configure AWS Credentials
117115 uses : aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2
118116 with :
@@ -125,27 +123,29 @@ jobs:
125123 LAYER_VERSION=$(aws --region us-gov-east-1 lambda publish-layer-version \
126124 --layer-name ${{ matrix.layer }}-${{ matrix.arch }} \
127125 --zip-file fileb://./${{ matrix.layer }}_${{ matrix.arch }}.zip \
128- --compatible-runtimes $(jq -r " .CompatibleRuntimes[0]" ${{ matrix.layer }}_${{ matrix.arch }}.json) \
129- --compatible-architectures $(jq -r " .CompatibleArchitectures[0]" ${{ matrix.layer }}_${{ matrix.arch }}.json) \
126+ --compatible-runtimes " $(jq -r ' .CompatibleRuntimes[0]' ' ${{ matrix.layer }}_${{ matrix.arch }}.json')" \
127+ --compatible-architectures " $(jq -r ' .CompatibleArchitectures[0]' ' ${{ matrix.layer }}_${{ matrix.arch }}.json')" \
130128 --license-info "MIT-0" \
131- --description "$(jq -r '.Description' ${{ matrix.layer }}_${{ matrix.arch }}.json)" \
129+ --description "$(jq -r '.Description' ' ${{ matrix.layer }}_${{ matrix.arch }}.json' )" \
132130 --query 'Version' \
133131 --output text)
132+
134133 echo "LAYER_VERSION=$LAYER_VERSION" >> "$GITHUB_OUTPUT"
135134
136135 aws --region us-gov-east-1 lambda add-layer-version-permission \
137- --layer-name ${{ matrix.layer }}-${{ matrix.arch }} \
136+ --layer-name ' ${{ matrix.layer }}-${{ matrix.arch }}' \
138137 --statement-id 'PublicLayer' \
139138 --action lambda:GetLayerVersion \
140139 --principal '*' \
141- --version-number $LAYER_VERSION
140+ --version-number " $LAYER_VERSION"
142141 - name : Verify Layer
143142 env :
144143 LAYER_VERSION : ${{ steps.create-layer.outputs.LAYER_VERSION }}
145144 run : |
146- REMOTE_SHA=$(aws --region us-gov-east-1 lambda get-layer-version-by-arn --arn arn:aws-us-gov:lambda:us-gov-east-1:${{ secrets.AWS_ACCOUNT_ID }}:layer:${{ matrix.layer }}-${{ matrix.arch }}:${{ env.LAYER_VERSION }} --query 'Content.CodeSha256' --output text)
147- SHA=$(jq -r '.Content.CodeSha256' ${{ matrix.layer }}_${{ matrix.arch }}.json)
148- test $REMOTE_SHA == $SHA && echo "SHA OK: ${SHA}" || exit 1
145+ REMOTE_SHA=$(aws --region us-gov-east-1 lambda get-layer-version-by-arn --arn 'arn:aws-us-gov:lambda:us-gov-east-1:${{ secrets.AWS_ACCOUNT_ID }}:layer:${{ matrix.layer }}-${{ matrix.arch }}:${{ env.LAYER_VERSION }}' --query 'Content.CodeSha256' --output text)
146+ SHA=$(jq -r '.Content.CodeSha256' '${{ matrix.layer }}_${{ matrix.arch }}.json')
147+ test "$REMOTE_SHA" == "$SHA "&& echo "SHA OK: ${SHA}" || exit 1
148+ aws --region us-gov-east-1 lambda get-layer-version-by-arn --arn 'arn:aws-us-gov:lambda:us-gov-east-1:${{ secrets.AWS_ACCOUNT_ID }}:layer:${{ matrix.layer }}-${{ matrix.arch }}:${{ env.LAYER_VERSION }}' --output text
149149
150150 copy_west :
151151 name : Copy (West)
@@ -178,8 +178,8 @@ jobs:
178178 name : ${{ matrix.layer }}_${{ matrix.arch }}.json
179179 - name : Verify Layer Signature
180180 run : |
181- SHA=$(jq -r '.Content.CodeSha256' ${{ matrix.layer }}_${{ matrix.arch }}.json)
182- test $(openssl dgst -sha256 -binary ${{ matrix.layer }}_${{ matrix.arch }}.zip | openssl enc -base64) == $SHA && echo "SHA OK: ${SHA}" || exit 1
181+ SHA=$(jq -r '.Content.CodeSha256' ' ${{ matrix.layer }}_${{ matrix.arch }}.json' )
182+ test " $(openssl dgst -sha256 -binary ${{ matrix.layer }}_${{ matrix.arch }}.zip | openssl enc -base64)" == " $SHA" && echo "SHA OK: ${SHA}" || exit 1
183183 - name : Configure AWS Credentials
184184 uses : aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2
185185 with :
@@ -192,25 +192,26 @@ jobs:
192192 LAYER_VERSION=$(aws --region us-gov-west-1 lambda publish-layer-version \
193193 --layer-name ${{ matrix.layer }}-${{ matrix.arch }} \
194194 --zip-file fileb://./${{ matrix.layer }}_${{ matrix.arch }}.zip \
195- --compatible-runtimes $(jq -r " .CompatibleRuntimes[0]" ${{ matrix.layer }}_${{ matrix.arch }}.json) \
196- --compatible-architectures $(jq -r " .CompatibleArchitectures[0]" ${{ matrix.layer }}_${{ matrix.arch }}.json) \
195+ --compatible-runtimes " $(jq -r ' .CompatibleRuntimes[0]' ' ${{ matrix.layer }}_${{ matrix.arch }}.json')" \
196+ --compatible-architectures " $(jq -r ' .CompatibleArchitectures[0]' ' ${{ matrix.layer }}_${{ matrix.arch }}.json')" \
197197 --license-info "MIT-0" \
198- --description "$(jq -r '.Description' ${{ matrix.layer }}_${{ matrix.arch }}.json)" \
198+ --description "$(jq -r '.Description' ' ${{ matrix.layer }}_${{ matrix.arch }}.json' )" \
199199 --query 'Version' \
200200 --output text)
201201
202202 echo "LAYER_VERSION=$LAYER_VERSION" >> "$GITHUB_OUTPUT"
203203
204204 aws --region us-gov-west-1 lambda add-layer-version-permission \
205- --layer-name ${{ matrix.layer }}-${{ matrix.arch }} \
205+ --layer-name ' ${{ matrix.layer }}-${{ matrix.arch }}' \
206206 --statement-id 'PublicLayer' \
207207 --action lambda:GetLayerVersion \
208208 --principal '*' \
209- --version-number $LAYER_VERSION
209+ --version-number " $LAYER_VERSION"
210210 - name : Verify Layer
211211 env :
212212 LAYER_VERSION : ${{ steps.create-layer.outputs.LAYER_VERSION }}
213213 run : |
214- REMOTE_SHA=$(aws --region us-gov-west-1 lambda get-layer-version-by-arn --arn arn:aws-us-gov:lambda:us-gov-west-1:${{ secrets.AWS_ACCOUNT_ID }}:layer:${{ matrix.layer }}-${{ matrix.arch }}:${{ env.LAYER_VERSION }} --query 'Content.CodeSha256' --output text)
215- SHA=$(jq -r '.Content.CodeSha256' ${{ matrix.layer }}_${{ matrix.arch }}.json)
216- test $REMOTE_SHA == $SHA && echo "SHA OK: ${SHA}" || exit 1
214+ REMOTE_SHA=$(aws --region us-gov-west-1 lambda get-layer-version-by-arn --arn 'arn:aws-us-gov:lambda:us-gov-west-1:${{ secrets.AWS_ACCOUNT_ID }}:layer:${{ matrix.layer }}-${{ matrix.arch }}:${{ env.LAYER_VERSION }}' --query 'Content.CodeSha256' --output text)
215+ SHA=$(jq -r '.Content.CodeSha256' '${{ matrix.layer }}_${{ matrix.arch }}.json')
216+ test "$REMOTE_SHA" == "$SHA "&& echo "SHA OK: ${SHA}" || exit 1
217+ aws --region us-gov-west-1 lambda get-layer-version-by-arn --arn 'arn:aws-us-gov:lambda:us-gov-west-1:${{ secrets.AWS_ACCOUNT_ID }}:layer:${{ matrix.layer }}-${{ matrix.arch }}:${{ env.LAYER_VERSION }}' --output text
0 commit comments