ci: add Gitea Actions workflows and deployment automation
Some checks failed
Build and Test / Build Server (Linux) (push) Has been cancelled
Build and Test / Build Agent (Windows) (push) Has been cancelled
Build and Test / Security Audit (push) Has been cancelled
Build and Test / Build Summary (push) Has been cancelled
Run Tests / Test Server (push) Has been cancelled
Run Tests / Test Agent (push) Has been cancelled
Run Tests / Code Coverage (push) Has been cancelled
Run Tests / Lint and Format Check (push) Has been cancelled
Some checks failed
Build and Test / Build Server (Linux) (push) Has been cancelled
Build and Test / Build Agent (Windows) (push) Has been cancelled
Build and Test / Security Audit (push) Has been cancelled
Build and Test / Build Summary (push) Has been cancelled
Run Tests / Test Server (push) Has been cancelled
Run Tests / Test Agent (push) Has been cancelled
Run Tests / Code Coverage (push) Has been cancelled
Run Tests / Lint and Format Check (push) Has been cancelled
- Add build-and-test workflow for automated builds - Add deploy workflow for production deployments - Add test workflow for comprehensive testing - Add deployment automation script with rollback - Add version tagging automation - Add Gitea Actions runner installation script Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
113
scripts/install-gitea-runner.sh
Executable file
113
scripts/install-gitea-runner.sh
Executable file
@@ -0,0 +1,113 @@
|
||||
#!/bin/bash
|
||||
# Install and configure Gitea Actions Runner
|
||||
# Run as: sudo bash install-gitea-runner.sh
|
||||
|
||||
set -e
|
||||
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
echo "========================================="
|
||||
echo "Gitea Actions Runner Installation"
|
||||
echo "========================================="
|
||||
echo ""
|
||||
|
||||
# Check if running as root
|
||||
if [ "$EUID" -ne 0 ]; then
|
||||
echo -e "${RED}ERROR: This script must be run as root (sudo)${NC}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Variables
|
||||
RUNNER_VERSION="0.2.11"
|
||||
RUNNER_USER="gitea-runner"
|
||||
RUNNER_HOME="/home/${RUNNER_USER}"
|
||||
GITEA_URL="https://git.azcomputerguru.com"
|
||||
RUNNER_NAME="gururmm-runner"
|
||||
|
||||
echo "Installing Gitea Actions Runner v${RUNNER_VERSION}"
|
||||
echo "Target: ${GITEA_URL}"
|
||||
echo ""
|
||||
|
||||
# Create runner user
|
||||
if ! id "${RUNNER_USER}" &>/dev/null; then
|
||||
echo "Creating ${RUNNER_USER} user..."
|
||||
useradd -m -s /bin/bash "${RUNNER_USER}"
|
||||
echo -e "${GREEN}User created${NC}"
|
||||
else
|
||||
echo -e "${YELLOW}User ${RUNNER_USER} already exists${NC}"
|
||||
fi
|
||||
|
||||
# Download runner binary
|
||||
echo "Downloading Gitea Actions Runner..."
|
||||
cd /tmp
|
||||
wget -q "https://dl.gitea.com/act_runner/${RUNNER_VERSION}/act_runner-${RUNNER_VERSION}-linux-amd64" -O act_runner
|
||||
|
||||
# Install binary
|
||||
echo "Installing binary..."
|
||||
chmod +x act_runner
|
||||
mv act_runner /usr/local/bin/
|
||||
chown root:root /usr/local/bin/act_runner
|
||||
|
||||
# Create runner directory
|
||||
echo "Creating runner directory..."
|
||||
mkdir -p "${RUNNER_HOME}/.runner"
|
||||
chown -R "${RUNNER_USER}:${RUNNER_USER}" "${RUNNER_HOME}/.runner"
|
||||
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo "Runner Registration"
|
||||
echo "========================================="
|
||||
echo ""
|
||||
echo "To complete setup, you need to register the runner with Gitea:"
|
||||
echo ""
|
||||
echo "1. Go to: ${GITEA_URL}/admin/actions/runners"
|
||||
echo "2. Click 'Create new Runner'"
|
||||
echo "3. Copy the registration token"
|
||||
echo "4. Run as ${RUNNER_USER}:"
|
||||
echo ""
|
||||
echo " sudo -u ${RUNNER_USER} act_runner register \\"
|
||||
echo " --instance ${GITEA_URL} \\"
|
||||
echo " --token YOUR_REGISTRATION_TOKEN \\"
|
||||
echo " --name ${RUNNER_NAME} \\"
|
||||
echo " --labels ubuntu-latest,ubuntu-22.04"
|
||||
echo ""
|
||||
echo "5. Then create systemd service:"
|
||||
echo ""
|
||||
cat > /etc/systemd/system/gitea-runner.service << 'EOF'
|
||||
[Unit]
|
||||
Description=Gitea Actions Runner
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=gitea-runner
|
||||
WorkingDirectory=/home/gitea-runner/.runner
|
||||
ExecStart=/usr/local/bin/act_runner daemon
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
Environment="HOME=/home/gitea-runner"
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
|
||||
echo "Systemd service created at /etc/systemd/system/gitea-runner.service"
|
||||
echo ""
|
||||
echo "After registration, enable and start the service:"
|
||||
echo " sudo systemctl daemon-reload"
|
||||
echo " sudo systemctl enable gitea-runner"
|
||||
echo " sudo systemctl start gitea-runner"
|
||||
echo " sudo systemctl status gitea-runner"
|
||||
echo ""
|
||||
echo "========================================="
|
||||
echo "Installation Complete!"
|
||||
echo "========================================="
|
||||
echo ""
|
||||
echo -e "${YELLOW}Next Steps:${NC}"
|
||||
echo "1. Register the runner (see instructions above)"
|
||||
echo "2. Start the systemd service"
|
||||
echo "3. Verify runner shows up in Gitea Admin > Actions > Runners"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user