labels: host: Mac-mini.local platform: darwin/arm64 gpu: metal when: event: [manual] steps: - name: create some file image: /bin/zsh commands: - echo "Hello, World!" > hello.txt - name: upload-hello-txt image: /bin/zsh environment: AWS_ACCESS_KEY_ID: from_secret: AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY: from_secret: AWS_SECRET_ACCESS_KEY AWS_DEFAULT_REGION: from_secret: AWS_DEFAULT_REGION S3_BUCKET: from_secret: S3_BUCKET S3_ENDPOINT: from_secret: S3_ENDPOINT commands: - | set -e echo "=== 调试信息 ===" echo "AWS_ACCESS_KEY_ID is set: $([[ -n "$AWS_ACCESS_KEY_ID" ]] && echo 'YES' || echo 'NO')" echo "AWS_SECRET_ACCESS_KEY is set: $([[ -n "$AWS_SECRET_ACCESS_KEY" ]] && echo 'YES' || echo 'NO')" echo "S3_BUCKET is set: $([[ -n "$S3_BUCKET" ]] && echo 'YES' || echo 'NO')" echo "S3_ENDPOINT: ${S3_ENDPOINT:-'NOT SET'}" echo "================" if [[ -n "$AWS_ACCESS_KEY_ID" && -n "$AWS_SECRET_ACCESS_KEY" && -n "$S3_BUCKET" ]]; then echo "Uploading hello.txt to S3..." export PLUGIN_SOURCE="hello.txt" export PLUGIN_BUCKET="$S3_BUCKET" export PLUGIN_TARGET="woodpecker-test/" [[ -n "$S3_ENDPOINT" ]] && export PLUGIN_ENDPOINT="$S3_ENDPOINT" && export PLUGIN_PATH_STYLE=true plugin-s3 echo "✅ hello.txt uploaded successfully!" else echo "⚠️ No S3 credentials found. Skipping upload." fi - name: s3-upload-demo image: /bin/zsh environment: AWS_ACCESS_KEY_ID: from_secret: AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY: from_secret: AWS_SECRET_ACCESS_KEY AWS_DEFAULT_REGION: from_secret: AWS_DEFAULT_REGION S3_BUCKET: from_secret: S3_BUCKET S3_ENDPOINT: from_secret: S3_ENDPOINT commands: - | set -e if [[ -n "$AWS_ACCESS_KEY_ID" && -n "$AWS_SECRET_ACCESS_KEY" && -n "$S3_BUCKET" ]]; then echo "Hello S3 from Woodpecker at $(date)" > s3-demo.txt export PLUGIN_SOURCE="s3-demo.txt" export PLUGIN_BUCKET="$S3_BUCKET" export PLUGIN_TARGET="woodpecker-demo/" [[ -n "$S3_ENDPOINT" ]] && export PLUGIN_ENDPOINT="$S3_ENDPOINT" && export PLUGIN_PATH_STYLE=true plugin-s3 else echo "No S3 creds found. Skipping s3-upload-demo." fi