Skip to content

Add Terraform files for provisioning OpenSearch clusters (#965) #69

Add Terraform files for provisioning OpenSearch clusters (#965)

Add Terraform files for provisioning OpenSearch clusters (#965) #69

name: Docker Push Release
on:
push:
branches:
- main
permissions:
id-token: write
contents: read
jobs:
docker:
if: github.repository == 'opensearch-project/opensearch-benchmark'
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
# Workaround for a memory allocation layout bug in QEMU,
# triggered by a kernel update to Linux machine images.
# Note that this is not an actual fix.
with:
image: tonistiigi/binfmt:qemu-v7.0.0-28
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Configure Role to Acquire Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.BENCHMARK_DOCKERHUB_ROLE }}
aws-region: us-east-1
- name: Retrieve Password
id: retrieve-password
run: |
DOCKERHUB_PASSWORD=`aws secretsmanager get-secret-value --secret-id jenkins-staging-dockerhub-credential --query SecretString --output text`
echo "::add-mask::$DOCKERHUB_PASSWORD"
echo "dockerhub-password=$DOCKERHUB_PASSWORD" >> $GITHUB_OUTPUT
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.BENCHMARK_DOCKERHUB_USERNAME }}
password: ${{ steps.retrieve-password.outputs.dockerhub-password }}
- name: Docker Build Multi-Platform
run: |
docker buildx version
tag=main-latest
set -x
docker buildx build --platform linux/amd64,linux/arm64 --build-arg VERSION=`cat version.txt` --build-arg BUILD_DATE=`date -u +%Y-%m-%dT%H:%M:%SZ` -f docker/Dockerfile -t opensearchstaging/opensearch-benchmark:"$tag" --push .
set +x