Ansible role to install and configure Gitlab.
Building and improving this Ansible role have been sponsored by my current and previous employers like Cloudpunks GmbH and Proact Deutschland GmbH.
- Requirements
- Default Variables
- gitlab_backup_keep_time
- gitlab_backup_path
- gitlab_backup_upload_location
- gitlab_backup_upload_remote_directory
- gitlab_block_auto_created_users
- gitlab_config_backup_day
- gitlab_config_backup_enabled
- gitlab_config_backup_hour
- gitlab_config_backup_job
- gitlab_config_backup_minute
- gitlab_config_backup_month
- gitlab_config_backup_path
- gitlab_config_backup_post
- gitlab_config_backup_pre
- gitlab_config_backup_script
- gitlab_config_backup_weekday
- gitlab_content_backup_day
- gitlab_content_backup_enabled
- gitlab_content_backup_hour
- gitlab_content_backup_job
- gitlab_content_backup_minute
- gitlab_content_backup_month
- gitlab_content_backup_path
- gitlab_content_backup_post
- gitlab_content_backup_pre
- gitlab_content_backup_script
- gitlab_content_backup_weekday
- gitlab_default_theme
- gitlab_domain
- gitlab_download_validate_certs
- gitlab_email_display_name
- gitlab_email_enabled
- gitlab_email_from
- gitlab_email_reply_to
- gitlab_external_url
- gitlab_extra_config
- gitlab_git_data_dir
- gitlab_keyring
- gitlab_letsencrypt_auto_renew
- gitlab_letsencrypt_auto_renew_day_of_month
- gitlab_letsencrypt_auto_renew_hour
- gitlab_letsencrypt_auto_renew_minute
- gitlab_letsencrypt_contact_emails
- gitlab_letsencrypt_enable
- gitlab_omniauth_allow_bypass_two_factor
- gitlab_omniauth_allow_single_sign_on
- gitlab_omniauth_auto_link_user
- gitlab_omniauth_providers
- gitlab_prune_daily_day
- gitlab_prune_daily_enabled
- gitlab_prune_daily_hour
- gitlab_prune_daily_job
- gitlab_prune_daily_minute
- gitlab_prune_daily_month
- gitlab_prune_daily_path
- gitlab_prune_daily_post
- gitlab_prune_daily_pre
- gitlab_prune_daily_script
- gitlab_prune_daily_weekday
- gitlab_prune_weekly_day
- gitlab_prune_weekly_enabled
- gitlab_prune_weekly_hour
- gitlab_prune_weekly_job
- gitlab_prune_weekly_minute
- gitlab_prune_weekly_month
- gitlab_prune_weekly_path
- gitlab_prune_weekly_post
- gitlab_prune_weekly_pre
- gitlab_prune_weekly_script
- gitlab_prune_weekly_weekday
- gitlab_redirect_http_to_https
- gitlab_registry_domain
- gitlab_registry_enable
- gitlab_registry_external_url
- gitlab_registry_nginx_ssl_certificate
- gitlab_registry_nginx_ssl_certificate_key
- gitlab_smtp_address
- gitlab_smtp_authentication
- gitlab_smtp_ca_file
- gitlab_smtp_ca_path
- gitlab_smtp_domain
- gitlab_smtp_enable
- gitlab_smtp_enable_starttls_auto
- gitlab_smtp_openssl_verify_mode
- gitlab_smtp_password
- gitlab_smtp_port
- gitlab_smtp_tls
- gitlab_smtp_user_name
- gitlab_ssl_certificate
- gitlab_ssl_certificate_key
- gitlab_time_zone
- gitlab_version
- gitlan_external_url
- gitlan_registry_path
- Discovered Tags
- Dependencies
- License
- Author
- Minimum Ansible version:
2.10
Time to keep backups for
gitlab_backup_keep_time: 604800Path to store the backups
gitlab_backup_path: /var/opt/gitlab/backupsUpload location for backups
gitlab_backup_upload_location:Remote upload directory
gitlab_backup_upload_remote_directory:Block autocreated users
gitlab_block_auto_created_users: falsegitlab_config_backup_day: '*'gitlab_config_backup_enabled: falsegitlab_config_backup_hour: '03'gitlab_config_backup_job: /usr/bin/cronic {{ gitlab_config_backup_path }}gitlab_config_backup_minute: '00'gitlab_config_backup_month: '*'gitlab_config_backup_path: /usr/local/bin/gitlab-backup-configgitlab_config_backup_post:gitlab_config_backup_pre:gitlab_config_backup_script: gitlab-ctl backup-etc --delete-old-backupsgitlab_config_backup_weekday: '*'gitlab_content_backup_day: '*'gitlab_content_backup_enabled: falsegitlab_content_backup_hour: '03'gitlab_content_backup_job: /usr/bin/cronic {{ gitlab_content_backup_path }}gitlab_content_backup_minute: '00'gitlab_content_backup_month: '*'gitlab_content_backup_path: /usr/local/bin/gitlab-backup-contentgitlab_content_backup_post:gitlab_content_backup_pre:gitlab_content_backup_script: gitlab-backup creategitlab_content_backup_weekday: '*'Default theme for Gitlab
gitlab_default_theme: 2Domain to access Gitlab
gitlab_domain: git.example.comValidate download certificates
gitlab_download_validate_certs: trueName used for email configuration
gitlab_email_display_name: GitlabEnable email configuration
gitlab_email_enabled: falseFrom used for email configuration
gitlab_email_from: gitlab@example.comReply used for email configuration
gitlab_email_reply_to: gitlab@example.comgitlab_external_url: https://{{ gitlab_domain }}/Optional additional configuration for gitlab.rb config file
gitlab_extra_config:Data directory for repositories
gitlab_git_data_dir: /var/opt/gitlab/git-dataPath for the repository keyring
gitlab_keyring: /usr/share/keyrings/gitlab-archive-keyring.gpgEnable autorenew for LEts Encrypt
gitlab_letsencrypt_auto_renew: trueDaf of month to renew Lets Encrypt certificates
gitlab_letsencrypt_auto_renew_day_of_month: '*/7'Hour to renew Lets Encrypt certificates
gitlab_letsencrypt_auto_renew_hour: 1Minute to renew Lets Encrypt certificates
gitlab_letsencrypt_auto_renew_minute: 30List of contact mail adresses for Lets Encrypt
gitlab_letsencrypt_contact_emails:
- gitlab@example.comEnabled Lets Encrypt configuration
gitlab_letsencrypt_enable: falsegitlab_omniauth_allow_bypass_two_factor: []List of Omniauth methods to allow single signon
gitlab_omniauth_allow_single_sign_on: []List of Omniauth methods to bypass 2FA.
gitlab_omniauth_auto_link_user: []List of Omniauth providers
gitlab_omniauth_providers: []gitlab_prune_daily_day: '*'gitlab_prune_daily_enabled: falsegitlab_prune_daily_hour: '02'gitlab_prune_daily_job: /usr/bin/cronic {{ gitlab_prune_daily_path }}gitlab_prune_daily_minute: '00'gitlab_prune_daily_month: '*'gitlab_prune_daily_path: /usr/local/bin/gitlab-prune-dailygitlab_prune_daily_post:gitlab_prune_daily_pre:gitlab_prune_daily_script: gitlab-ctl registry-garbage-collectgitlab_prune_daily_weekday: 1-6gitlab_prune_weekly_day: '*'gitlab_prune_weekly_enabled: falsegitlab_prune_weekly_hour: '02'gitlab_prune_weekly_job: /usr/bin/cronic {{ gitlab_prune_weekly_path }}gitlab_prune_weekly_minute: '00'gitlab_prune_weekly_month: '*'gitlab_prune_weekly_path: /usr/local/bin/gitlab-prune-weeklygitlab_prune_weekly_post:gitlab_prune_weekly_pre:gitlab_prune_weekly_script: gitlab-ctl registry-garbage-collect -mgitlab_prune_weekly_weekday: '0'Always redirect HTTP to HTTPS
gitlab_redirect_http_to_https: trueDomain to access registry
gitlab_registry_domain: registry.example.comEnable registry configuration
gitlab_registry_enable: falseFull external URL to access registry
gitlab_registry_external_url: https://{{ gitlab_registry_domain }}Path to registry SSL certificate
gitlab_registry_nginx_ssl_certificate: /etc/gitlab/ssl/gitlab.crtPath to registry SSL certificate key
gitlab_registry_nginx_ssl_certificate_key: /etc/gitlab/ssl/gitlab.keyAddress for SMTP connection
gitlab_smtp_address:Authentication for SMTP connection
gitlab_smtp_authentication: loginPath to CA certificate file for SMTP connections
gitlab_smtp_ca_file: /etc/ssl/certs/ca-certificates.crtPath to CA certificates for SMTP connection
gitlab_smtp_ca_path: /etc/ssl/certsDomain for SMTP connection
gitlab_smtp_domain:Enable SMTP configuration
gitlab_smtp_enable: falseEnable STARTTLS for SMTP connection
gitlab_smtp_enable_starttls_auto: trueVerify SSL for SMTP connection
gitlab_smtp_openssl_verify_mode: nonePassword for SMTP connection
gitlab_smtp_password:Port for SMTP connection
gitlab_smtp_port: 465Enable TLS for SMTP connection
gitlab_smtp_tls: falseUsername for SMTP connection
gitlab_smtp_user_name:Path for SSL certificate
gitlab_ssl_certificate: /etc/gitlab/ssl/{{ gitlab_domain }}.crtPath for SSL certificate key
gitlab_ssl_certificate_key: /etc/gitlab/ssl/{{ gitlab_domain }}.keyTimezone used for Gitlab
gitlab_time_zone: UTCVersion of Gitlab that gets installed
gitlab_version: 18.1.1Full external URL to access Gitlab
Path to store registry data
gitlan_registry_path:gitlab
- None
Apache-2.0