Skip to content

added windows firewall automation script #22

added windows firewall automation script

added windows firewall automation script #22

Workflow file for this run

name: CI/CD Pipeline
on:
push:
branches:
- main
jobs:
test:
name: Run Tests
runs-on: self-hosted
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.13.1"
- name: Install Dependencies
run: pip install -r requirements.txt
- name: Run Pytest
run: pytest --junitxml=pytest-results.xml
- name: Upload Pytest Results
uses: actions/upload-artifact@v4
with:
name: pytest-results
path: pytest-results.xml
build-and-push:
name: Build & Push Docker Image
needs: test # Only runs if tests pass
runs-on: self-hosted
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Log in to Docker Hub
run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin
- name: Build Docker Image
run: docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/threat-aggregator .
- name: Push Docker Image
run: docker push ${{ secrets.DOCKERHUB_USERNAME }}/threat-aggregator
deploy:
name: Deploy to Docker VM
needs: build-and-push
runs-on: self-hosted
steps:
- name: Deploy via SSH
uses: appleboy/ssh-action@v0.1.7
with:
host: ${{ secrets.DOCKER_VM_IP }}
username: ${{ secrets.DOCKER_VM_USER }}
key: ${{ secrets.DOCKER_VM_SSH_KEY }}
script: |
docker pull ${{ secrets.DOCKERHUB_USERNAME }}/threat-aggregator:latest
docker stop threat-aggregator || true
docker rm threat-aggregator || true
docker run -d --name threat-aggregator -p 80:80 -v ${pwd}/threat-aggregator-data/:/code/app/data ${{ secrets.DOCKERHUB_USERNAME }}/threat-aggregator:latest