Compare commits
12 Commits
runner
...
feat-runner
| Author | SHA1 | Date | |
|---|---|---|---|
| d190828088 | |||
| 0d4fccf5f8 | |||
| 4dfd52e234 | |||
| b47095b29b | |||
| ec06738768 | |||
| 7d902ef71d | |||
| bc66403532 | |||
| 81afcc2d47 | |||
| a8a94ca4d2 | |||
| 7c8ac5a72a | |||
| 454f23dfa3 | |||
| 177679f02c |
@@ -18,9 +18,11 @@ LETS_ENCRYPT_ENV=production
|
||||
GITLAB_ROOT_EMAIL="gitlab_admin@example.com"
|
||||
SECRET_INITIAL_ROOT_PASSWORD_VERSION=v1
|
||||
SECRET_RUNNER_TOKEN_VERSION=v1
|
||||
SECRET_REGISTRATION_TOKEN_VERSION=v1
|
||||
|
||||
SSO=false
|
||||
## Authentik Configuration
|
||||
|
||||
# SSO=true
|
||||
# ORG_NAME="My Organization"
|
||||
# SSO_PROVIDER_URL="https://authentik.mydomain.com/application/o/gitlab/"
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#!/bin/bash
|
||||
GITLAB_CONF_VERSION=v1
|
||||
ENTRYPOINT_VERSION=v1
|
||||
RUNNER_ENTRYPOINT_VERSION=v1
|
||||
RUNNER_CONF_VERSION=v1
|
||||
|
||||
run_rails_command() {
|
||||
su -p root -s /bin/sh -c "gitlab-rails runner '$@'"
|
||||
@@ -28,4 +30,10 @@ disable_signups() {
|
||||
enable_signups () {
|
||||
run_rails_command 'Gitlab::CurrentSettings.update!(signup_enabled: true)'
|
||||
reconfigure
|
||||
}
|
||||
|
||||
register_runner() {
|
||||
RUNNER_TOKEN="$1"
|
||||
|
||||
gitlab-runner register --non-interactive --url "https://$CI_SERVER_URL" --token "$RUNNER_TOKEN" --executor "docker"
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
---
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
runner:
|
||||
image: registry.gitlab.com/gitlab-org/gitlab-runner:alpine
|
||||
depends_on:
|
||||
- dind
|
||||
environment:
|
||||
- CI_SERVER_URL=${DOMAIN}
|
||||
- DOCKER_HOST=tcp://socket-proxy:2375
|
||||
- RUNNER_TIMEOUT
|
||||
- RUNNER_CONCURENCY
|
||||
configs:
|
||||
- source: runner_conf
|
||||
target: /etc/gitlab-runner/config.toml
|
||||
- source: entrypoint
|
||||
target: /custom-entrypoint.sh
|
||||
mode: 0555
|
||||
volumes:
|
||||
- "runnner_config:/etc/gitlab-runner"
|
||||
networks:
|
||||
- internal
|
||||
deploy:
|
||||
restart_policy:
|
||||
condition: on-failure
|
||||
entrypoint: /custom-entrypoint.sh
|
||||
|
||||
socket-proxy:
|
||||
image: lscr.io/linuxserver/socket-proxy:3.2.6
|
||||
environment:
|
||||
- PROXY_READ_TIMEOUT=5000
|
||||
- ALLOW_START=1
|
||||
- ALLOW_STOP=1
|
||||
- ALLOW_RESTARTS=1
|
||||
- AUTH=1
|
||||
- BUILD=1
|
||||
- COMMIT=1
|
||||
- CONFIGS=1
|
||||
- CONTAINERS=1
|
||||
- DISABLE_IPV6=0
|
||||
- DISTRIBUTION=0
|
||||
- EVENTS=1
|
||||
- EXEC=1
|
||||
- IMAGES=1
|
||||
- INFO=1
|
||||
- NETWORKS=1
|
||||
- NODES=1
|
||||
- PING=1
|
||||
- POST=1
|
||||
- PLUGINS=1
|
||||
- SECRETS=1
|
||||
- SERVICES=1
|
||||
- SESSION=1
|
||||
- SWARM=1
|
||||
- SYSTEM=1
|
||||
- TASKS=1
|
||||
- VERSION=1
|
||||
- VOLUMES=1
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
networks:
|
||||
- internal
|
||||
ports:
|
||||
- "2375:2375"
|
||||
|
||||
volumes:
|
||||
runnner_config:
|
||||
|
||||
secrets:
|
||||
registration_token:
|
||||
name: ${STACK_NAME}_registration_token_${SECRET_REGISTRATION_TOKEN_VERSION}
|
||||
external: true
|
||||
|
||||
configs:
|
||||
runner_conf:
|
||||
name: ${STACK_NAME}_runner_config_${RUNNER_CONF_VERSION}
|
||||
file: runner-config.toml.tmpl
|
||||
template_driver: golang
|
||||
entrypoint:
|
||||
name: ${STACK_NAME}_runner_entrypoint_${RUNNER_ENTRYPOINT_VERSION}
|
||||
file: runner-entrypoint.sh.tmpl
|
||||
template_driver: golang
|
||||
+2
-2
@@ -3,7 +3,7 @@ version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
image: 'gitlab/gitlab-ce:17.7.3-ce.0'
|
||||
image: 'gitlab/gitlab-ce:18.3.0-ce.0'
|
||||
networks:
|
||||
- proxy
|
||||
- internal
|
||||
@@ -34,7 +34,7 @@ services:
|
||||
- "backupbot.backup=true"
|
||||
- "backupbot.backup.path=/etc/gitlab/,/var/log/gitlab/,/var/opt/gitlab/"
|
||||
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-240}"
|
||||
- "coop-cloud.${STACK_NAME}.version=0.1.2+17.7.3-ce.0"
|
||||
- "coop-cloud.${STACK_NAME}.version=0.2.2+18.3.0-ce.0"
|
||||
secrets:
|
||||
- initial_root_password
|
||||
- runner_token
|
||||
|
||||
+1
-1
@@ -6,4 +6,4 @@ echo "Copying custom Gitlab config to /etc/gitlab/"
|
||||
cp /gitlab.rb /etc/gitlab/gitlab.rb
|
||||
|
||||
echo "Entrypoint finished, launching Gitlab"
|
||||
exec "/assets/wrapper"
|
||||
exec "/assets/init-container"
|
||||
|
||||
+1
-1
@@ -678,7 +678,7 @@ gitlab_rails['omniauth_providers'] = [
|
||||
# high_availability['mountpoint'] = ["/var/opt/gitlab/git-data", "/var/opt/gitlab/gitlab-rails/shared"]
|
||||
|
||||
### GitLab Shell settings for GitLab
|
||||
# gitlab_rails['gitlab_shell_ssh_port'] = 22
|
||||
gitlab_rails['gitlab_shell_ssh_port'] = {{ env "GITLAB_SSH_PORT" }}
|
||||
# gitlab_rails['gitlab_shell_git_timeout'] = 800
|
||||
|
||||
### Enable gitlab-sshd on a different port than OpenSSH
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
Fixes bug where GITLAB_SSH_PORT was not set in the Gitlab config
|
||||
@@ -0,0 +1 @@
|
||||
Starting with 18.0, GitLab will collect event-level product usage data from Self-Managed and Dedicated instances — while ensuring privacy, transparency, and customer control. GitLab administrators can turn off the data collection toggle before any data is collected in version 18.0. For more information about this change and how you can opt out, see the documentation: https://docs.gitlab.com/17.11/administration/settings/event_data/
|
||||
@@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
while [ ! -s /etc/gitlab-runner/config.toml ]
|
||||
do
|
||||
echo "The runner was not registered yet. Next try in 5 seconds."
|
||||
sleep 5
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user