Skip to content

fix:go.sum not found #34

fix:go.sum not found

fix:go.sum not found #34

Workflow file for this run

name: CI/CD Pipeline
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
Test:
runs-on: ubuntu-latest
steps:
- name: Check out the code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.22.2
- name: Install dependencies
run: go mod download
- name: Test code
env:
DB_URI: ${{ secrets.TEST_DB_URI }}
JWT_SECRET: ${{ secrets.TEST_JWT_SECRET }}
ENVIRONMENT: ${{ secrets.ENVIRONMENT }}
run: |
cd test
go test -run TestOrder
Build:
runs-on: ubuntu-latest
needs: Test
steps:
- name: Check out the code
uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.22.2
- name: Build and push Docker image
if: |
github.event_name == 'push' &&
github.ref == 'refs/heads/main'
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
JWT_SECRET: ${{ secrets.JWT_SECRET }}
DB_URI: ${{ secrets.DB_URI }}
run: |
echo $DOCKER_PASSWORD | docker login -u $DOCKER_USERNAME --password-stdin
docker build --build-arg JWT_SECRET=${JWT_SECRET} --build-arg DB_URI=${DB_URI} -t piyush7833/chat-api:latest .
docker push piyush7833/chat-api:latest
# AWS INSTANCES ARE NOT FREE, SO I AM COMMENTING THIS CODE
# - name: Update ECS task definition and service
# if: github.event_name == 'push' && github.ref == 'refs/heads/main'
# env:
# AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
# AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
# AWS_REGION: ${{ secrets.AWS_REGION }}
# ECS_CLUSTER: ${{ secrets.ECS_CLUSTER }}
# ECS_SERVICE: ${{ secrets.ECS_SERVICE }}
# ECS_TASK_DEFINITION: ${{ secrets.ECS_TASK_DEFINITION }}
# ECR_IMAGE_URI: ${{ secrets.AWS_ECR_IMAGE_URL }}
# run: |
# aws ecr get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin $ECR_IMAGE_URI
# docker tag piyush7833/chat-api:latest $ECR_IMAGE_URI/chat-api:latest
# docker push $ECR_IMAGE_URI/chat-api:latest
# echo "Fetching current task definition"
# TASK_DEFINITION_JSON=$(aws ecs describe-task-definition --task-definition $ECS_TASK_DEFINITION)
# echo "Updating task definition with new image"
# NEW_TASK_DEF_JSON=$(echo $TASK_DEFINITION_JSON | jq --arg IMAGE_URI "$ECR_IMAGE_URI:latest" '.taskDefinition | .containerDefinitions[0].image=$IMAGE_URI')
# echo "Registering new task definition"
# NEW_TASK_DEF_FAMILY=$(echo $NEW_TASK_DEF_JSON | jq -r .family)
# NEW_TASK_DEF=$(aws ecs register-task-definition \
# --family $NEW_TASK_DEF_FAMILY \
# --task-role-arn $(echo $NEW_TASK_DEF_JSON | jq -r .taskRoleArn) \
# --execution-role-arn $(echo $NEW_TASK_DEF_JSON | jq -r .executionRoleArn) \
# --network-mode $(echo $NEW_TASK_DEF_JSON | jq -r .networkMode) \
# --container-definitions "$(echo $NEW_TASK_DEF_JSON | jq -r .containerDefinitions)" \
# --requires-compatibilities "$(echo $NEW_TASK_DEF_JSON | jq -r .requiresCompatibilities)" \
# --cpu $(echo $NEW_TASK_DEF_JSON | jq -r .cpu) \
# --memory $(echo $NEW_TASK_DEF_JSON | jq -r .memory))
# NEW_TASK_DEF_ARN=$(echo $NEW_TASK_DEF | jq -r .taskDefinition.taskDefinitionArn)
# echo "Updating ECS service to use the new task definition"
# aws ecs update-service --cluster $ECS_CLUSTER --service $ECS_SERVICE --task-definition $NEW_TASK_DEF_ARN