@@ -10,9 +10,6 @@ inputs:
1010 node_version :
1111 required : true
1212 description : ' The node version used in actions'
13- iam-role :
14- required : true
15- description : ' The role use to publish lambda layer'
1613 layer_directory :
1714 required : true
1815 description : ' The role use to publish lambda layer'
@@ -25,49 +22,70 @@ inputs:
2522 staging_s3_bucket :
2623 required : true
2724 description : ' S3 bucket holds SDK artifact tarball'
25+ staging_tarball :
26+ required : true
27+ description : ' tarball file for building'
2828
2929runs :
3030 using : ' composite'
3131 steps :
32- - name : Download SDK Tarball from S3
33- shell : bash
34- run : |
35- aws s3 cp s3://${{ inputs.staging_s3_bucket }} ./aws-distro-opentelemetry-node-autoinstrumentation/
36- - name : Build layers
32+ - name : Download Tarball to GitHub Actions
33+ uses : actions/download-artifact@v3
34+ with :
35+ name : ${{ inputs.staging_tarball}}
36+ path : ./aws-distro-opentelemetry-node-autoinstrumentation/
37+ - name : Setup layers tools
3738 shell : bash
3839 run : npm install
3940 working-directory : ${{ inputs.layer_directory }}
41+ - name : Setup layers
42+ shell : bash
43+ run : npm install
44+ working-directory : ${{ inputs.layer_directory }}/packages/layer
4045 - name : Build lambda sample app
4146 shell : bash
4247 run : npm install
43- working-directory : ${{ inputs.lambda-layer/sample-apps/aws-sdk }}
44- - name : Get terraform directory
48+ working-directory : ${{ inputs.sample_app_directory }}
49+ # - uses: hashicorp/setup-terraform@v2
50+ # - name: Initialize terraform
51+ # shell: bash
52+ # run: terraform init
53+ # working-directory: ${{ inputs.terraform_directory }}
54+ # - name: Get terraform Lambda function name
55+ # shell: bash
56+ # run: |
57+ # echo TERRAFORM_LAMBDA_FUNCTION_NAME=AdotLambdaNodeJsSampleApp-${{ github.run_id }}|
58+ # tee --append $GITHUB_ENV
59+ # - name: Apply terraform
60+ # shell: bash
61+ # run: terraform apply -auto-approve
62+ # working-directory: ${{ inputs.terraform_directory }}
63+ # env:
64+ # TF_VAR_sdk_layer_name: AWSOpenTelemetryDistroJs-${{ github.run_id }}
65+ # TF_VAR_function_name: ${{ env.TERRAFORM_LAMBDA_FUNCTION_NAME }}
66+ # - name: Extract endpoint
67+ # id: extract-endpoint
68+ # shell: bash
69+ # run: terraform output -raw api-gateway-url
70+ # working-directory: ${{ inputs.terraform_directory }}
71+ # - name: Send request to endpoint
72+ # shell: bash
73+ # run: sleep 30s; curl -sS ${{ steps.extract-endpoint.outputs.stdout }}
74+ - name : Upload Layer to S3
4575 shell : bash
4676 run : |
47- echo TERRAFORM_DIRECTORY=lambda-layer/terraform/lambda |
48- tee --append $GITHUB_ENV
49- - uses : hashicorp/setup-terraform@v2
50- - name : Initialize terraform
51- shell : bash
52- run : terraform init
53- working-directory : ${{ inputs.terraform_directory }}
54- - name : Get terraform Lambda function name
77+ aws s3 cp ./build/layer.zip s3://${{ env.STAGING_S3_BUCKET }}/layer-${{ github.run_id }}.zip
78+ working-directory : ${{ inputs.layer_directory }}/packages/layer
79+ - name : Upload Sample App to S3
5580 shell : bash
5681 run : |
57- echo TERRAFORM_LAMBDA_FUNCTION_NAME=AdotLambdaNodeJsSampleApp-${{ github.sha }}|
58- tee --append $GITHUB_ENV
59- - name : Apply terraform
60- shell : bash
61- run : terraform apply -auto-approve
62- working-directory : ${{ inputs.terraform_directory }}
63- env :
64- TF_VAR_sdk_layer_name : AWSOpenTelemetryDistroJs-${{ github.run_id }}
65- TF_VAR_function_name : ${{ env.TERRAFORM_LAMBDA_FUNCTION_NAME }}
66- TF_VAR_architecture : ${{ env.LAMBDA_FUNCTION_ARCH }}
67- TF_VAR_configuration_source : ${{ matrix.confmap }}
68- TF_VAR_runtime : ${{ matrix.runtime }}
69- - name : Extract endpoint
70- id : extract-endpoint
71- shell : bash
72- run : terraform output -raw api-gateway-url
73- working-directory : ${{ inputs.terraform_directory }}
82+ aws s3 cp ./build/function.zip s3://${{ env.STAGING_S3_BUCKET }}/function-${{ github.run_id }}.zip
83+ working-directory : ${{ inputs.layer_directory }}/sample-apps/aws-sdk
84+
85+
86+ # - name: Destroy terraform
87+ # shell: bash
88+ # if: always()
89+ # run: terraform destroy -auto-approve
90+ # working-directory: ${{ inputs.terraform_directory }}
91+
0 commit comments