Files
query-orchestration/bitbucket-pipelines.yml
Jay Brown b779ebc32f Merged in feature/cicd_resources (pull request #198)
increase memory for builds

* increase memory
2025-12-16 18:41:58 +00:00

116 lines
3.6 KiB
YAML

---
image: ubuntu:latest
definitions:
caches:
devbox: ~/.cache/devbox
apt-lists: /var/lib/apt/lists
apt-cache: /var/cache/apt/archives
services:
docker:
memory: 24000
steps:
- step: &fullsuite
name: Fullsuite
size: 16x
services:
- docker
caches:
- devbox
- apt-lists
- apt-cache
script:
- export DOCKER_BUILDKIT=0
- export DOCKER_HOST=tcp://localhost:2375
- export TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=tcp://localhost:2375
- export TESTCONTAINERS_RYUK_DISABLED=true
- export TESTCONTAINERS_RYUK_CONNECTION_TIMEOUT=60s
- export DOCKER_CLIENT_TIMEOUT=120
- rm /etc/apt/apt.conf.d/docker-clean || true
- apt-get update
- apt-get install -y curl git
- curl -fsSL https://get.jetify.com/devbox | bash -s -- -f
- export PATH="/root/.local/bin:$PATH"
- touch .env
# Pre-pull test container images in parallel to avoid timeout on first run
- docker pull postgres:17.2-alpine3.21 &
- docker pull localstack/localstack:4.1.0 &
- docker pull mockserver/mockserver:5.15.0 &
- wait
- devbox install
- export DISABLE_AUTH=true
- devbox run -- AWS_PROFILE="" task fullsuite:ci
- step: &fullsuite-and-publish
name: Fullsuite and Publish
size: 16x
oidc: true
deployment: dev
services:
- docker
caches:
- devbox
- apt-lists
- apt-cache
script:
- export DOCKER_BUILDKIT=0
- export DOCKER_HOST=tcp://localhost:2375
- export TESTCONTAINERS_DOCKER_SOCKET_OVERRIDE=tcp://localhost:2375
- export TESTCONTAINERS_RYUK_DISABLED=true
- export TESTCONTAINERS_RYUK_CONNECTION_TIMEOUT=60s
- export DOCKER_CLIENT_TIMEOUT=120
- export AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION:-us-east-1}
- export IMAGE_TAG=$ECR_REGISTRY/doczy/query-orchestration:$BITBUCKET_COMMIT
- export AWS_WEB_IDENTITY_TOKEN_FILE=$(pwd)/web-identity-token
- echo $BITBUCKET_STEP_OIDC_TOKEN > $(pwd)/web-identity-token
- rm /etc/apt/apt.conf.d/docker-clean || true
- apt-get update
- apt-get install -y curl git unzip
- mkdir -p out
- cd out
- curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
- unzip awscliv2.zip
- ./aws/install
- curl -fsSL https://get.jetify.com/devbox | bash -s -- -f
- export PATH="/root/.local/bin:$PATH"
- cd ..
- aws sts get-caller-identity --query "Arn" --output text
- |
aws ecr get-login-password --region $AWS_DEFAULT_REGION | \
docker login --username AWS --password-stdin $ECR_REGISTRY
- touch .env
# Pre-pull test container images in parallel to avoid timeout on first run
- docker pull postgres:17.2-alpine3.21 &
- docker pull localstack/localstack:4.1.0 &
- docker pull mockserver/mockserver:5.15.0 &
- wait
- devbox install
- export DISABLE_AUTH=true
- devbox run -- AWS_PROFILE="" task fullsuite:ci
- docker tag queryorchestration:latest $IMAGE_TAG
- docker push $IMAGE_TAG
after-script:
- docker stop registry || true
pipelines:
branches:
main:
- step: *fullsuite-and-publish
pull-requests:
"**":
- step: *fullsuite