Commit b5cc4879 authored by Benavides Ontiveros's avatar Benavides Ontiveros
Browse files

verify docker push and login

parent 823896e9
Pipeline #12179 passed with stages
in 20 seconds
......@@ -10,6 +10,16 @@ variables:
DOCKER_REGISTRY: "docker.io"
DOCKERHUB_REPO: "$DOCKER_USERNAME/reddit_data_fetcher"
# =====================================================================
# BASE JOB TEMPLATE
# =====================================================================
.build_template:
tags: ["ubuntu", "vm"] # Must match your runner tags
image: docker:24.0.9 # Docker CLI available
before_script:
- echo "Using host Docker daemon"
- docker info || true # check Docker access
# =====================================================================
# LINT
# =====================================================================
......@@ -19,11 +29,11 @@ lint:
tags: ["ubuntu", "vm"]
before_script:
- pip install flake8
script:
- echo "Linting Python code..."
- flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
- flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- echo "Done running the Python Lint stage"
script: |
echo "Linting Python code..."
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
echo "Done running the Python Lint stage"
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
- if: '$CI_COMMIT_BRANCH'
......@@ -40,8 +50,8 @@ test:
before_script:
- pip install pytest
- echo "Running Tests"
script:
- pytest -q || echo "No tests found"
script: |
pytest -q || echo "No tests found"
after_script:
- echo "Tests completed successfully"
rules:
......@@ -55,19 +65,13 @@ test:
# =====================================================================
diag:
stage: diag
image: docker:24.0.9
tags: ["ubuntu", "vm"]
before_script:
- echo "Checking Docker access..."
- docker info || true
script:
- echo "Check Docker socket:"
- ls -l /var/run || true
- stat /var/run/docker.sock || true
- echo "Docker version:"
- docker version || true
- echo "Docker info:"
- docker info || true
extends: .build_template
script: |
echo "Check Docker access:"
ls -l /var/run
stat /var/run/docker.sock || true
docker version || true
docker info || true
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
- if: '$CI_COMMIT_BRANCH'
......@@ -79,17 +83,18 @@ diag:
# =====================================================================
build:
stage: build
image: docker:24.0.9
tags: ["ubuntu", "vm"]
before_script:
- echo "Checking Docker access..."
- docker info || true
script:
- echo "Building Docker image for commit: ${CI_COMMIT_SHORT_SHA}"
- docker build --build-arg REDDIT_CLIENT_ID="$REDDIT_CLIENT_ID" --build-arg REDDIT_CLIENT_SECRET="$REDDIT_CLIENT_SECRET" -t $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA .
extends: .build_template
script: |
echo "Logging in to Docker registry..."
echo "$DOCKER_TOKEN" | docker login -u "$DOCKER_USERNAME" --password-stdin
echo "Building Docker image for commit: ${CI_COMMIT_SHORT_SHA}"
docker build \
--build-arg REDDIT_CLIENT_ID="$REDDIT_CLIENT_ID" \
--build-arg REDDIT_CLIENT_SECRET="$REDDIT_CLIENT_SECRET" \
-t $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA .
after_script:
- echo "Docker image built successfully!"
- echo "Listing local images:"
- docker images
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
when: never
......@@ -102,27 +107,28 @@ build:
# =====================================================================
deploy:
stage: deploy
image: docker:24.0.9
tags: ["ubuntu", "vm"]
before_script:
- echo "Checking Docker access..."
- docker info || true
script:
- echo "Logging in to Docker Hub..."
- echo "$DOCKER_TOKEN" | docker login -u "$DOCKER_USERNAME" --password-stdin
- docker info | grep Username || (echo "Docker login failed!" && exit 1)
- echo "Listing local images before push:"
- docker images
- echo "Pushing image: $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA"
- docker push $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA || (echo "Push failed!" && exit 1)
- if [ "$CI_COMMIT_BRANCH" = "$CI_DEFAULT_BRANCH" ]; then
echo "Tagging image as latest...";
docker tag $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA $DOCKERHUB_REPO:latest;
echo "Pushing latest tag...";
docker push $DOCKERHUB_REPO:latest || (echo "Push latest failed!" && exit 1);
fi
- echo "Listing local images after push:"
- docker images
extends: .build_template
script: |
echo "Logging in to Docker registry..."
echo "$DOCKER_TOKEN" | docker login -u "$DOCKER_USERNAME" --password-stdin
# Verify login
docker info | grep Username || (echo "Docker login failed!" && exit 1)
echo "Listing local Docker images before push..."
docker images
echo "Pushing Docker image: $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA"
docker push $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA
if [ "$CI_COMMIT_BRANCH" = "$CI_DEFAULT_BRANCH" ]; then
echo "Tagging image as latest..."
docker tag $DOCKERHUB_REPO:$CI_COMMIT_SHORT_SHA $DOCKERHUB_REPO:latest
echo "Pushing latest tag..."
docker push $DOCKERHUB_REPO:latest
fi
echo "Listing local Docker images after push..."
docker images
rules:
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
- when: never
\ No newline at end of file
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment