diff --git a/jenkins/rac1Tw b/jenkins/rac1Tw new file mode 100644 index 0000000..20bd49a --- /dev/null +++ b/jenkins/rac1Tw @@ -0,0 +1,44 @@ +pipeline { + agent any + + triggers { + // Runs every 30 minutes, matching your GitHub Action cron + cron('H/30 * * * *') + } + + stages { + stage('Checkout & Setup') { + steps { + checkout scm + sh ''' + # Create and activate the virtual environment, then install dependencies + python3 -m venv venv + . venv/bin/activate + pip install atproto fastfeedparser beautifulsoup4 httpx arrow charset-normalizer + ''' + } + } + + stage('Post RSS to Bluesky') { + steps { + // 🔐 Fetch the RAC1 specific credentials + withCredentials([ + string(credentialsId: 'BSKY_RAC1_HANDLE', variable: 'BSKY_RAC1_HANDLE'), + string(credentialsId: 'BSKY_RAC1_USERNAME', variable: 'BSKY_RAC1_USERNAME'), + string(credentialsId: 'BSKY_RAC1_APP_PASSWORD', variable: 'BSKY_RAC1_APP_PASSWORD') + ]) { + sh ''' + . venv/bin/activate + + # Execute the script with the hardcoded RAC1 URL and credentials + python3 rss2bsky.py \\ + "https://www.rac1.cat/rss/home.xml" \\ + "$BSKY_RAC1_HANDLE" \\ + "$BSKY_RAC1_USERNAME" \\ + "$BSKY_RAC1_APP_PASSWORD" + ''' + } + } + } + } +} \ No newline at end of file