Skip to content

Update self_runner_test.yml #21

Update self_runner_test.yml

Update self_runner_test.yml #21

name: Dynamic Runner
on:
workflow_dispatch:
push:
jobs:
start-runner:
runs-on: flysql26-dispatch
outputs:
uuid: ${{ steps.generate_uuid.outputs.uuid }}
steps:
- name: Generate UUID
id: generate_uuid
run: |
UUID=$(uuidgen)
echo "UUID=$UUID" >> $GITHUB_ENV
echo "::set-output name=uuid::$UUID"
- name: Start Dockerized Runner
run: |
bash /var/go/actions-runner-dispatch/runner-controller.sh start ${{ secrets.CREATE_RUNNER_TOKEN }} ${{ secrets.AWS_ACCESS_KEY_ID }} ${{ secrets.AWS_SECRET_ACCESS_KEY }} ${{ steps.generate_uuid.outputs.uuid }}
use-runner:
needs: start-runner
runs-on: ${{ needs.start-runner.outputs.uuid }}
steps:
- name: Log in to ECR
run: |
if echo "100225593120.dkr.ecr.us-east-1.amazonaws.com" | egrep "ecr\..+\.amazonaws\.com"; then
docker run --rm -e AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }} -e AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }} -e AWS_DEFAULT_REGION=us-east-1 amazon/aws-cli ecr get-login-password --region us-east-1 | docker login -u AWS --password-stdin https://100225593120.dkr.ecr.us-east-1.amazonaws.com
fi
- name: Construct NEO_ENV_IMAGE
id: construct-image
env:
REGISTRY: 100225593120.dkr.ecr.us-east-1.amazonaws.com
DOCKER_PULL_TAG: "stage" # Adjust as needed
run: echo "NEO_ENV_IMAGE=${{ env.REGISTRY }}/agr_neo4j_env:${{ env.DOCKER_PULL_TAG }}" >> $GITHUB_ENV
- name: Pull Neo4j Env Image
run: docker pull $NEO_ENV_IMAGE
- name: Run Neo4j
env:
NEO_SERVER_NAME: "stage-neo4j.alliancegenome.org"
NEO_VOLUME_NAME: "/data"
NET: "host"
NEO_MAX_HEAP: "31GB"
NEO_OFF_HEAP_MAX: "0GB"
NEO_ON_OFF_HEAP: "OFF_HEAP"
NEO_TRANSACTION: "0"
NEO4J_AUTH: "none"
run: |
docker run --rm -d \
--name ${{ env.NEO_SERVER_NAME }} \
-p 7474:7474 \
-p 7687:7687 \
-v ${{ env.NEO_VOLUME_NAME }}:/var/lib/neo4j/import \
--network ${{ env.NET }} \
-e NEO4J_server_memory_heap_max__size=${{ env.NEO_MAX_HEAP }} \
-e NEO4J_server_memory_heap_initial__size=${{ env.NEO_MAX_HEAP }} \
-e NEO4J_server_memory_off__heap_max__size=${{ env.NEO_OFF_HEAP_MAX }} \
-e NEO4J_db_tx__state_memory__allocation=${{ env.NEO_ON_OFF_HEAP }} \
-e NEO4J_dbms_memory_transaction_total_max=${{ env.NEO_TRANSACTION }} \
-e NEO4J_db_memory_transaction_total_max=${{ env.NEO_TRANSACTION }} \
-e NEO4J_db_memory_transaction_max=${{ env.NEO_TRANSACTION }} \
-e NEO4J_AUTH=${{ env.NEO4J_AUTH }} \
$NEO_ENV_IMAGE
stop-runner:
needs: use-runner
runs-on: flysql26-dispatch
steps:
- name: Stop Dockerized Runner
env:
UUID: ${{ needs.start-runner.outputs.uuid }}
run: |
bash /var/go/actions-runner-dispatch/runner-controller.sh stop $UUID