[Gerrit] Switch to local project config

Change-Id: Ic8cb91b14a3e35f199119491dce6a320fbc41c3e
This commit is contained in:
Alexey Khivin 2016-05-16 16:23:08 +03:00
parent 7c617762d7
commit c0b9861333
5 changed files with 59 additions and 10 deletions

View File

@ -68,11 +68,9 @@ Methods:
- $.createConfiguration()
- $resources: new(sys:Resources)
- $template: $resources.yaml('DeployGerrit.template')
- $._execDeployGerrit()
- $._reInitProjectConfig()
- $._environment.reporter.report($this, 'Deploying Gerrit...')
- $.instance.agent.call($template, $resources)
- $._environment.reporter.report($this, 'Gerrit is deployed.')
- $.setAttr(deployed, true)
@ -135,7 +133,23 @@ Methods:
- $.instance.setHieraValue( 'swift_store_user', 'swift_store_user')
- $.instance.setHieraValue( 'swift_store_key', 'swift_store_key')
- $.instance.setHieraValue( 'jeepyb_project_file', '/etc/project-config/gerrit/projects.yaml')
- $.instance.setHieraValue( 'project_config_config_dir', '/etc/project-config-init/')
getProjectConfigRepo:
Body:
- Return: !yaql "format('https://{0}/open-paas/project-config', $this.instance.ipAddresses[0])"
# Switch to newly created project-config repo
_reInitProjectConfig:
Body:
- $.instance.setHieraValue( 'project_config_config_dir', '/etc/project-config/')
- $.instance.setHieraValue( 'project_config_repo', $.getProjectConfigRepo())
_execDeployGerrit:
Body:
- $resources: new(sys:Resources)
- $template: $resources.yaml('DeployGerrit.template')
- $.instance.agent.call($template, $resources)
#NOTE: this method doesn't work without ldap
createAccount:

View File

@ -5,14 +5,22 @@ Name: Deploy Gerrit
Parameters:
Body: |
deploy()
deploy_gerrit()
Scripts:
deploy:
deploy_gerrit:
Type: Application
Version: 1.0.0
EntryPoint: deploy_gerrit.sh
Files: ['gen_ssl_cert.sh', 'gen_rsa_key.sh', 'database.pp', 'site.pp', 'create_projects.pp', 'gerrit_gitconfig.erb']
Files: [
'gen_ssl_cert.sh',
'gen_rsa_key.sh',
'database.pp',
'site.pp',
'create_projects.pp',
'gerrit_gitconfig.erb',
'create_projects_periodic.sh'
]
Options:
captureStdout: false
captureStderr: true

View File

@ -0,0 +1,8 @@
#!/bin/bash
CONF_DIR="/etc/ci-cd"
rm -rf /etc/project-config
GIT_SSL_NO_VERIFY=true /usr/bin/puppet apply ${CONF_DIR}/gerrit.pp
/usr/local/bin/manage-projects

View File

@ -1,5 +1,8 @@
#!/bin/bash
CONF_DIR="/etc/ci-cd"
EXECUTABLES_DIR="/usr/local/bin"
logger Install dev packages
apt-get update && apt-get install -y build-essential libssl-dev libffi-dev python-dev
@ -18,6 +21,12 @@ logger Database puppet
puppet apply database.pp
logger Gerrit puppet
# store to add cron task later
mkdir -p ${CONF_DIR}
cp site.pp ${CONF_DIR}/gerrit.pp
cp create_projects_periodic.sh ${EXECUTABLES_DIR}/create_projects_periodic.sh
chmod +x ${EXECUTABLES_DIR}/create_projects_periodic.sh
puppet apply site.pp
logger Projects puppet

View File

@ -75,10 +75,9 @@ node default {
swift_username => hiera('swift_store_user', 'username'),
swift_password => hiera('swift_store_key'),
replication_force_update => true,
replication => [
],
replication => [],
require => [
Class['project_config'],
Class['project_config'],
],
}
gerrit::plugin { 'javamelody':
@ -88,6 +87,17 @@ node default {
ensure => absent,
}
cron { "puppet":
user => 'root',
ensure => present,
command => "/usr/local/bin/create_projects_periodic.sh",
hour => '*',
minute => '*/5',
require => [
Class['openstack_project::gerrit'],
],
}
# exec { "/usr/xpg4/bin/id >/tmp/puppet-id-test 2>&1",
# user => "puppet",
#