name: CI/CD - DockerHub on: push: branches: [ "main" ] pull_request: branches: [ "main" ] workflow_dispatch: jobs: build-test-deploy: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Set up Python uses: actions/setup-python@v4 with: python-version: "3.11" - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install pytest - name: Login to Docker Hub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push Docker image run: | docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/plants-diseases-lite:latest . docker push ${{ secrets.DOCKERHUB_USERNAME }}/plants-diseases-lite:latest