Merge "vpp: disable ccache for gcc builds"
[ci-management.git] / jjb / scripts / publish_cov.sh
1 #!/bin/bash
2
3 # Copyright (c) 2023 Cisco and/or its affiliates.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at:
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15
16 echo "---> publish_cov.sh"
17
18 set -exuo pipefail
19
20 CDN_URL="s3-docs-7day.fd.io"
21 bucket="vpp-docs-7day-retention"
22 # Use the same bucket path as logs so that the code coverage report can be viewed by
23 # s/s3-logs/s3-docs-7day/ in the URL after selecting the logs URL from
24 # the jenkins job page.
25 bucket_path="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER/"
26
27 if [[ ${JOB_NAME} == *verify* ]]; then
28     case "${JOB_NAME}" in
29         *"vpp-cov"*)
30             workspace_dir="${WORKSPACE}/build-root/test-coverage/html"
31             ;;
32         *)
33             die "Unknown job: ${JOB_NAME}"
34     esac
35 else
36     die "Unknown job: ${JOB_NAME}"
37 fi
38
39 export TF_VAR_workspace_dir="$workspace_dir"
40 export TF_VAR_bucket_path="$bucket_path"
41 export TF_VAR_bucket="$bucket"
42 export AWS_SHARED_CREDENTIALS_FILE=$HOME/.aws/credentials
43 export AWS_DEFAULT_REGION="us-east-1"
44
45 echo "INFO: archiving test coverage to S3 bucket '$bucket'"
46 pushd ..
47 terraform init -no-color
48 terraform apply -no-color -auto-approve
49 popd
50
51 echo "S3 Test Coverage: <a href=\"https://${CDN_URL}/${bucket_path}\">https://${CDN_URL}/${bucket_path}</a>"