Merge branch 'gitlab-next'

This commit is contained in:
Sameer Naik 2016-03-23 16:26:16 +05:30
commit 9a221888ed
8 changed files with 49 additions and 10 deletions

View File

@ -2,6 +2,12 @@
This file only reflects the changes that are made in this image. Please refer to the upstream GitLab [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) for the list of changes in GitLab.
**latest**
- gitlab-shell: upgrade to v.2.6.11
- gitlab-workhorse: upgrade to v0.7.1
- gitlab: upgrade to CE v8.6.0
- exposed configuration parameters for auth0 OAUTH support
**8.5.8**
- gitlab: upgrade to CE v8.5.8

View File

@ -1,9 +1,9 @@
FROM sameersbn/ubuntu:14.04.20160321
MAINTAINER sameer@damagehead.com
ENV GITLAB_VERSION=8.5.8 \
GITLAB_SHELL_VERSION=2.6.10 \
GITLAB_WORKHORSE_VERSION=0.6.4 \
ENV GITLAB_VERSION=8.6.0 \
GITLAB_SHELL_VERSION=2.6.11 \
GITLAB_WORKHORSE_VERSION=0.7.1 \
GOLANG_VERSION=1.5.3 \
GITLAB_USER="git" \
GITLAB_HOME="/home/git" \

View File

@ -152,6 +152,7 @@ Step 1. Launch a postgresql container
docker run --name gitlab-postgresql -d \
--env 'DB_NAME=gitlabhq_production' \
--env 'DB_USER=gitlab' --env 'DB_PASS=password' \
--env 'DB_EXTENSION=pg_trgm' \
--volume /srv/docker/gitlab/postgresql:/var/lib/postgresql \
sameersbn/postgresql:9.4-17
```
@ -180,10 +181,7 @@ docker run --name gitlab -d \
__NOTE__: Please allow a couple of minutes for the GitLab application to start.
Point your browser to `http://localhost:10080` and login using the default username and password:
* username: **root**
* password: **5iveL!fe**
Point your browser to `http://localhost:10080` and set a password for the `root` user account.
You should now have the GitLab application up and ready for testing. If you want to use this image in production the please read on.
@ -232,6 +230,8 @@ CREATE DATABASE gitlabhq_production;
GRANT ALL PRIVILEGES ON DATABASE gitlabhq_production to gitlab;
```
Additionally since GitLab `8.6.0` the `pg_trgm` extension should also be loaded for the `gitlabhq_production` database.
We are now ready to start the GitLab application.
*Assuming that the PostgreSQL server host is 192.168.1.100*
@ -274,6 +274,7 @@ The run command looks like this.
docker run --name gitlab-postgresql -d \
--env 'DB_NAME=gitlabhq_production' \
--env 'DB_USER=gitlab' --env 'DB_PASS=password' \
--env 'DB_EXTENSION=pg_trgm' \
--volume /srv/docker/gitlab/postgresql:/var/lib/postgresql \
sameersbn/postgresql:9.4-17
```
@ -715,6 +716,12 @@ To enable the Crowd server OAuth2 OmniAuth provider you must register your appli
Configure GitLab to enable access the Crowd server by specifying the `OAUTH_CROWD_SERVER_URL`, `OAUTH_CROWD_APP_NAME` and `OAUTH_CROWD_APP_PASSWORD` environment variables.
#### Auth0
To enable the Auth0 OmniAuth provider you must register your application with [auth0](https://auth0.com/).
Configure the following environment variables `OAUTH_AUTH0_CLIENT_ID`, `OAUTH_AUTH0_CLIENT_SECRET` and `OAUTH_AUTH0_DOMAIN` to complete the integration.
#### Microsoft Azure
To enable the Microsoft Azure OAuth2 OmniAuth provider you must register your application with Azure. Azure will generate a Client ID, Client secret and Tenant ID for you to use. Please refer to the GitLab [documentation](http://doc.gitlab.com/ce/integration/azure.html) for the procedure.
@ -905,6 +912,9 @@ Below is the complete list of available options that can be used to customize yo
- **OAUTH_CROWD_SERVER_URL**: Crowd server url. No defaults.
- **OAUTH_CROWD_APP_NAME**: Crowd server application name. No defaults.
- **OAUTH_CROWD_APP_PASSWORD**: Crowd server application password. No defaults.
- **OAUTH_AUTH0_CLIENT_ID**: Auth0 Client ID. No defaults.
- **OAUTH_AUTH0_CLIENT_SECRET**: Auth0 Client secret. No defaults.
- **OAUTH_AUTH0_DOMAIN**: Auth0 Domain. No defaults.
- **OAUTH_AZURE_API_KEY**: Azure Client ID. No defaults.
- **OAUTH_AZURE_API_SECRET**: Azure Client secret. No defaults.
- **OAUTH_AZURE_TENANT_ID**: Azure Tenant ID. No defaults.

View File

@ -56,7 +56,7 @@ exec_as_git ./bin/install
exec_as_git rm -rf ${GITLAB_HOME}/repositories
echo "Cloning gitlab-workhorse v.${GITLAB_WORKHORSE_VERSION}..."
exec_as_git git clone -q -b ${GITLAB_WORKHORSE_VERSION} --depth 1 ${GITLAB_WORKHORSE_CLONE_URL} ${GITLAB_WORKHORSE_INSTALL_DIR}
exec_as_git git clone -q -b v${GITLAB_WORKHORSE_VERSION} --depth 1 ${GITLAB_WORKHORSE_CLONE_URL} ${GITLAB_WORKHORSE_INSTALL_DIR}
echo "Downloading Go ${GOLANG_VERSION}..."
wget -cnv https://storage.googleapis.com/golang/go${GOLANG_VERSION}.linux-amd64.tar.gz -P ${GITLAB_BUILD_DIR}/

View File

@ -6,8 +6,8 @@
# GitLab user. git by default
user: git
# Url to gitlab instance. Used for api calls.
# Default: http://localhost:8080
# URL to GitLab instance, used for API calls. Default: http://localhost:8080.
# For relative URL support read http://doc.gitlab.com/ce/install/relative_url.html
# You only have to change the default if you have configured Unicorn
# to listen on a custom port, or if you have configured Unicorn to
# only listen on a Unix domain socket. For Unix domain sockets use
@ -17,6 +17,7 @@ gitlab_url: "http://localhost:8080{{GITLAB_RELATIVE_URL_ROOT}}"
# See installation.md#using-https for additional HTTPS configuration details.
http_settings:
# read_timeout: 300
# user: someone
# password: somepass
# ca_file: /etc/ssl/cert.pem

View File

@ -357,6 +357,11 @@ production: &base
crowd_server_url: '{{OAUTH_CROWD_SERVER_URL}}',
application_name: '{{OAUTH_CROWD_APP_NAME}}',
application_password: '{{OAUTH_CROWD_APP_PASSWORD}}' } }
- { name: 'auth0',
args: {
client_id: '{{OAUTH_AUTH0_CLIENT_ID}}',
client_secret: '{{OAUTH_AUTH0_CLIENT_SECRET}}',
namespace: '{{OAUTH_AUTH0_DOMAIN}}' } }
- { name: 'azure_oauth2',
args: {
client_id: '{{OAUTH_AZURE_API_KEY}}',

View File

@ -531,6 +531,21 @@ gitlab_configure_oauth_crowd() {
fi
}
gitlab_configure_oauth_auth0() {
if [[ -n ${OAUTH_AUTH0_CLIENT_ID} && \
-n ${OAUTH_AUTH0_CLIENT_SECRET} && \
-n ${OAUTH_AUTH0_DOMAIN} ]]; then
echo "Configuring gitlab::oauth::auth0..."
OAUTH_ENABLED=${OAUTH_ENABLED:-true}
update_template ${GITLAB_CONFIG} \
OAUTH_AUTH0_CLIENT_ID \
OAUTH_AUTH0_CLIENT_SECRET \
OAUTH_AUTH0_DOMAIN
else
exec_as_git sed -i "/name: 'auth0'/,/{{OAUTH_AUTH0_DOMAIN}}/d" ${GITLAB_CONFIG}
fi
}
gitlab_configure_oauth_azure() {
if [[ -n ${OAUTH_AZURE_API_KEY} && \
-n ${OAUTH_AZURE_API_SECRET} && \
@ -558,6 +573,7 @@ gitlab_configure_oauth() {
gitlab_configure_oauth_bitbucket
gitlab_configure_oauth_saml
gitlab_configure_oauth_crowd
gitlab_configure_oauth_auth0
gitlab_configure_oauth_azure
OAUTH_ENABLED=${OAUTH_ENABLED:-false}

View File

@ -5,6 +5,7 @@ postgresql:
- DB_USER=gitlab
- DB_PASS=password
- DB_NAME=gitlabhq_production
- DB_EXTENSION=pg_trgm
volumes:
- /srv/docker/gitlab/postgresql:/var/lib/postgresql
gitlab: