From 13749e3c23ca8f4b547341214612bcfaf7cf1efc Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Mon, 3 Aug 2015 09:44:59 -0400 Subject: [PATCH 1/9] Fix metadata.json Increment version number --- metadata.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/metadata.json b/metadata.json index ff457d4..6f400b6 100644 --- a/metadata.json +++ b/metadata.json @@ -12,8 +12,8 @@ "operatingsystem_support": [], "project_page": "", "requirements": [], - "source": "git@gitlab.forge.gouv.qc.ca:puppet/igo.git", + "source": "git@github.com:infra-geo-ouverte/puppet-igo.git", "summary": "Install and setup IGO-Navigator server", "tags": ["igo", "gis"], - "version": "1.1.0" + "version": "1.3.0" } From 686c07f75d780e7b429994bdeffc78f6d6d3a19f Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Mon, 3 Aug 2015 10:18:22 -0400 Subject: [PATCH 2/9] Add puppetlint validation with travis ci --- .travis.yml | 23 +++++++++++++++++++++++ Gemfile | 18 ++++++++++++++++++ Rakefile | 10 +++++++++- 3 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 .travis.yml create mode 100644 Gemfile diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..064240f --- /dev/null +++ b/.travis.yml @@ -0,0 +1,23 @@ +--- +sudo: false +language: ruby +script: "bundle exec rake lint" +matrix: + fast_finish: true + include: + - rvm: 1.8.7 + env: PUPPET_GEM_VERSION="~> 3.0" + - rvm: 1.9.3 + env: PUPPET_GEM_VERSION="~> 3.0" + - rvm: 2.1.5 + env: PUPPET_GEM_VERSION="~> 3.0" + - rvm: 2.1.5 + env: PUPPET_GEM_VERSION="~> 3.0" FUTURE_PARSER="yes" + - rvm: 2.1.6 + env: PUPPET_GEM_VERSION="~> 4.0" STRICT_VARIABLES="yes" + - rvm: 1.8.7 + env: PUPPET_GEM_VERSION="~> 2.7.0" FACTER_GEM_VERSION="~> 1.6.0" + - rvm: 1.8.7 + env: PUPPET_GEM_VERSION="~> 2.7.0" FACTER_GEM_VERSION="~> 1.7.0" +notifications: + email: false diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..b20b1a4 --- /dev/null +++ b/Gemfile @@ -0,0 +1,18 @@ +source ENV['GEM_SOURCE'] || "https://rubygems.org" + +if facterversion = ENV['FACTER_GEM_VERSION'] + gem 'facter', facterversion, :require => false +else + gem 'facter', :require => false +end + +if puppetversion = ENV['PUPPET_GEM_VERSION'] + gem 'puppet', puppetversion, :require => false +else + gem 'puppet', :require => false +end + +gem 'rake' +gem 'puppet-lint' + +# vim:ft=ruby diff --git a/Rakefile b/Rakefile index 14f1c24..ac7f069 100644 --- a/Rakefile +++ b/Rakefile @@ -1,2 +1,10 @@ require 'rubygems' -require 'puppetlabs_spec_helper/rake_tasks' +require 'puppet-lint/tasks/puppet-lint' + +PuppetLint.configuration.fail_on_warnings = true +PuppetLint.configuration.send('relative') +PuppetLint.configuration.send('disable_80chars') +PuppetLint.configuration.send('disable_class_inherits_from_params_class') +PuppetLint.configuration.send('disable_documentation') +PuppetLint.configuration.send('disable_single_quote_string_with_variables') +PuppetLint.configuration.ignore_paths = ["spec/**/*.pp", "pkg/**/*.pp"] From 4e9251cbcc09c8bf5a84df5f821e1c37c636d617 Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Mon, 3 Aug 2015 11:52:24 -0400 Subject: [PATCH 3/9] Use source config from file example instead of local template file (that doesnt keep sync with igo depot) --- manifests/apache.pp | 26 ++------------------------ manifests/init.pp | 8 ++++---- 2 files changed, 6 insertions(+), 28 deletions(-) diff --git a/manifests/apache.pp b/manifests/apache.pp index f61ed10..f107d2e 100644 --- a/manifests/apache.pp +++ b/manifests/apache.pp @@ -17,7 +17,7 @@ user => $appUser, group => $appGroup } - class { '::apache::mod::php': + class { '::apache::mod::php': } apache::vhost { 'igo': vhost_name => '*', @@ -26,10 +26,7 @@ docroot_owner => $appUser, docroot_group => $appGroup, aliases => [ - { alias => '/pilotage', - path => "${igoAppPath}/pilotage/", - }, - { alias => '/navigateur/', + { alias => '/igo_navigateur/', path => "${igoAppPath}/interfaces/navigateur/", }, { alias => '/api/', @@ -37,25 +34,6 @@ }, ], directories => [ - { - path => "${igoAppPath}/pilotage/", - provider => 'directory', - php_value => 'max_input_vars 2000', - rewrites => [ - { rewrite_rule => [ '^$ public/ [L]' ] }, - { rewrite_rule => [ '(.*) public/$1 [L]' ] }, - ], - }, - { - path => "${igoAppPath}/pilotage/public/", - provider => 'directory', - add_default_charset => 'UTF-8', - rewrites => [ - { rewrite_cond => [ '%{REQUEST_FILENAME} !-d' ] }, - { rewrite_cond => [ '%{REQUEST_FILENAME} !-f' ] }, - { rewrite_rule => [ '^(.*)$ index.php?_url=/$1 [QSA,L]' ] }, - ], - }, { path => "${igoAppPath}/interfaces/navigateur/", provider => 'directory', diff --git a/manifests/init.pp b/manifests/init.pp index 61da493..a46aaee 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -90,7 +90,7 @@ file { "${igoAppPath}/config/config.php": owner => $appUser, group => $appGroup, - content => template($configTemplate), + source => "${igoAppPath}/config/config.exempleSimple.php", require => $requiredIgoAppPath, } class { '::igo::apache': @@ -153,7 +153,7 @@ ensure => present, } exec { 'psql-postgis': - command => + command => "psql -d ${databaseName} -f ${pgsqlScriptPath}/postgis.sql && \ touch ${pgsqlEtcPath}/psql-postgis.done", path => $execPath, @@ -162,7 +162,7 @@ require => Postgresql::Server::Extension['plpgsql'], } exec { 'psql-postgis_comments': - command => + command => "psql -d ${databaseName} -f ${pgsqlScriptPath}/postgis_comments.sql && \ touch ${pgsqlEtcPath}/psql-postgis_comments.done", path => $execPath, @@ -171,7 +171,7 @@ require => Exec['psql-postgis'], } exec { "psql-spatial_ref_sys": - command => + command => "psql -d ${databaseName} -f ${pgsqlScriptPath}/spatial_ref_sys.sql && \ touch ${pgsqlEtcPath}/psql-spatial_ref_sys.done", path => $execPath, From 52529f0568d932112e542f0ef969be2bbbdf59ea Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Mon, 3 Aug 2015 16:10:19 -0400 Subject: [PATCH 4/9] Fix librairies folder --- manifests/init.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/init.pp b/manifests/init.pp index a46aaee..2a73980 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -65,7 +65,7 @@ } $requiredIgoAppPath = Vcsrepo["$igoAppPath"] } - vcsrepo { "${igoRootPath}/librairie": + vcsrepo { "${igoAppPath}/librairie": ensure => present, provider => git, source => $librairieGitRepo, From ad11d4a8e9f6a4212b0c7237e3e4f504475d74bc Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Mon, 3 Aug 2015 16:11:23 -0400 Subject: [PATCH 5/9] Fix build (autoload error) --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index ac7f069..1902101 100644 --- a/Rakefile +++ b/Rakefile @@ -2,7 +2,7 @@ require 'rubygems' require 'puppet-lint/tasks/puppet-lint' PuppetLint.configuration.fail_on_warnings = true -PuppetLint.configuration.send('relative') +PuppetLint.configuration.relative = true PuppetLint.configuration.send('disable_80chars') PuppetLint.configuration.send('disable_class_inherits_from_params_class') PuppetLint.configuration.send('disable_documentation') From c9a1fd4e459f84a163a619a1ed29fc4b82db6d9f Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Mon, 3 Aug 2015 16:12:17 -0400 Subject: [PATCH 6/9] Tentative to fix lint warnings --- manifests/apache.pp | 59 +++++++++++++++++++++++++-------------------- manifests/init.pp | 22 +++++++++-------- 2 files changed, 45 insertions(+), 36 deletions(-) diff --git a/manifests/apache.pp b/manifests/apache.pp index f107d2e..c5db04b 100644 --- a/manifests/apache.pp +++ b/manifests/apache.pp @@ -20,26 +20,28 @@ class { '::apache::mod::php': } apache::vhost { 'igo': - vhost_name => '*', - port => '80', - docroot => $igoRootPath, - docroot_owner => $appUser, - docroot_group => $appGroup, - aliases => [ - { alias => '/igo_navigateur/', - path => "${igoAppPath}/interfaces/navigateur/", - }, - { alias => '/api/', - path => "${igoAppPath}/interfaces/navigateur/api/", - }, + vhost_name => '*', + port => '80', + docroot => $igoRootPath, + docroot_owner => $appUser, + docroot_group => $appGroup, + aliases => [ + { + alias => '/igo_navigateur/', + path => "${igoAppPath}/interfaces/navigateur/" }, + { + alias => '/api/', + path => "${igoAppPath}/interfaces/navigateur/api/" }, ], - directories => [ + directories => [ { - path => "${igoAppPath}/interfaces/navigateur/", - provider => 'directory', - rewrites => [ - { rewrite_rule => [ '^$ public/ [L]' ] }, - { rewrite_rule => [ '(.*) public/$1 [L]' ] }, + path => "${igoAppPath}/interfaces/navigateur/", + provider => 'directory', + rewrites => [ + { + rewrite_rule => [ '^$ public/ [L]' ] }, + { + rewrite_rule => [ '(.*) public/$1 [L]' ] }, ], }, { @@ -47,17 +49,22 @@ provider => 'directory', add_default_charset => 'UTF-8', rewrites => [ - { rewrite_cond => [ '%{REQUEST_FILENAME} !-d' ] }, - { rewrite_cond => [ '%{REQUEST_FILENAME} !-f' ] }, - { rewrite_rule => [ '^(.*)$ index.php?_url=/$1 [QSA,L]' ] }, + { + rewrite_cond => [ '%{REQUEST_FILENAME} !-d' ] }, + { + rewrite_cond => [ '%{REQUEST_FILENAME} !-f' ] }, + { + rewrite_rule => [ '^(.*)$ index.php?_url=/$1 [QSA,L]' ] }, ], }, { - path => "${igoAppPath}/interfaces/navigateur/api/", - provider => 'directory', - rewrites => [ - { rewrite_cond => [ '%{REQUEST_FILENAME} !-f' ] }, - { rewrite_rule => [ '^(.*)$ index.php?_url=/$1 [QSA,L]' ] }, + path => "${igoAppPath}/interfaces/navigateur/api/", + provider => 'directory', + rewrites => [ + { + rewrite_cond => [ '%{REQUEST_FILENAME} !-f' ] }, + { + rewrite_rule => [ '^(.*)$ index.php?_url=/$1 [QSA,L]' ] }, ], }, ], diff --git a/manifests/init.pp b/manifests/init.pp index 2a73980..c01e2db 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -20,7 +20,6 @@ $pgUser = $::igo::params::pgUser, $appUser = $::igo::params::appUser, $appGroup = $::igo::params::appGroup, - $pgsqlScriptPath = $::igo::params::pgsqlScriptPath, $mapserverVersion = $::igo::params::mapserVerversion, $igoGitRepo = $::igo::params::igoGitRepo, $igoVersion = $::igo::params::igoVersion, @@ -28,6 +27,9 @@ $librairieVersion = $::igo::params::librairieVersion, $cphalconGitRepo = $::igo::params::cphalconGitRepo, $cphalconVersion = $::igo::params::cphalconVersion, + $pgsqlEtcPath = $::igo::params::pgsqlEtcPath, + $pgsqlScriptPath = $::igo::params::pgsqlScriptPath, + $srcPath = $::igo::params::srcPath, $configTemplate = $::igo::params::configTemplate, ) inherits ::igo::params { @@ -38,22 +40,22 @@ package { 'git': ensure => present, } - file { "$igoRootPath": + file { $igoRootPath: ensure => 'directory', owner => $appUser, group => $appGroup, mode => '0775', } if $usedByVagrant == true { - file { "$igoAppPath": + file { $igoAppPath: ensure => 'link', target => '/vagrant', force => true, require => File[$igoRootPath] } - $requiredIgoAppPath = File["$igoAppPath"] + $requiredIgoAppPath = File[$igoAppPath] } else { - vcsrepo { "$igoAppPath": + vcsrepo { $igoAppPath: ensure => present, provider => git, source => $igoGitRepo, @@ -63,7 +65,7 @@ File[$igoRootPath], ], } - $requiredIgoAppPath = Vcsrepo["$igoAppPath"] + $requiredIgoAppPath = Vcsrepo[$igoAppPath] } vcsrepo { "${igoAppPath}/librairie": ensure => present, @@ -126,7 +128,7 @@ require => Package['git'], } exec { 'installAndBuild-cphalcon': - command => "./install", + command => './install', cwd => "${srcPath}/cphalcon/build", path => $execPath, creates => '/usr/lib/php5/20121212/phalcon.so', @@ -144,13 +146,13 @@ } class { 'postgresql::server::postgis': } - postgresql::server::db { "$databaseName": + postgresql::server::db { $databaseName: user => $databaseUser, password => $databasePassword, } postgresql::server::extension { 'plpgsql': - database => $databaseName, ensure => present, + database => $databaseName, } exec { 'psql-postgis': command => @@ -170,7 +172,7 @@ creates => "${pgsqlEtcPath}/psql-postgis_comments.done", require => Exec['psql-postgis'], } - exec { "psql-spatial_ref_sys": + exec { 'psql-spatial_ref_sys': command => "psql -d ${databaseName} -f ${pgsqlScriptPath}/spatial_ref_sys.sql && \ touch ${pgsqlEtcPath}/psql-spatial_ref_sys.done", From 5ab27a7e01c6aa8851d70a5ed6e1f12a82a1f252 Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Tue, 4 Aug 2015 12:14:11 -0400 Subject: [PATCH 7/9] Preserve the old way to specify a custom config template file --- manifests/init.pp | 21 +++++-- manifests/params.pp | 8 +-- templates/config.php.erb | 122 --------------------------------------- 3 files changed, 20 insertions(+), 131 deletions(-) delete mode 100644 templates/config.php.erb diff --git a/manifests/init.pp b/manifests/init.pp index c01e2db..f2b13a8 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -89,11 +89,22 @@ mode => '0775', require => $requiredIgoAppPath, } - file { "${igoAppPath}/config/config.php": - owner => $appUser, - group => $appGroup, - source => "${igoAppPath}/config/config.exempleSimple.php", - require => $requiredIgoAppPath, + # Keep compatibility with users who want to use their own config template file. + if $configTemplate != '' { + file { "${igoAppPath}/config/config.php": + owner => $appUser, + group => $appGroup, + content => template($configTemplate), + require => $requiredIgoAppPath, + } + } + else { + file { "${igoAppPath}/config/config.php": + owner => $appUser, + group => $appGroup, + source => "${igoAppPath}/config/config.exempleSimple.php", + require => $requiredIgoAppPath, + } } class { '::igo::apache': igoRootPath => $igoRootPath, diff --git a/manifests/params.pp b/manifests/params.pp index dc282ca..d606038 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -20,17 +20,17 @@ $igoGitRepo = 'https://github.com/infra-geo-ouverte/igo.git' $igoVersion = 'master' - + $librairieGitRepo = 'https://github.com/infra-geo-ouverte/igo-lib.git' $librairieVersion = 'master' $cphalconGitRepo = 'https://github.com/phalcon/cphalcon.git' $cphalconVersion = 'v1.3.1' - + $pgsqlEtcPath = "/etc/postgresql/${::postgresql::globals::default_version}" $pgsqlScriptPath = "/usr/share/postgresql/${::postgresql::globals::default_version}/contrib/postgis-${::postgresql::globals::default_postgis_version}" $srcPath = '/usr/src' - - $configTemplate = 'igo/config.php.erb' + + $configTemplate = '' } diff --git a/templates/config.php.erb b/templates/config.php.erb deleted file mode 100644 index 842b6bb..0000000 --- a/templates/config.php.erb +++ /dev/null @@ -1,122 +0,0 @@ - array( - // 'adapter' => 'Postgresql', - // 'host' => '127.0.0.1', - // 'username' => 'postgres', - // 'password' => 'password', - // 'dbname' => 'postgres', - // 'schema' => 'schema', - // 'modelsMetadata' => 'Off' // valeurs possibles de configuration : Apc, Xcache, Off - //), - 'data' => array( // Connexion à la base de données pour l'édition en ligne - 'adapter' => 'Postgresql', - 'host' => 'host', - 'username' => 'user', - 'password' => 'password', - 'dbname' => 'dbname', - 'schema' => 'schema', - 'modelsMetadata' => 'Off' // valeurs possibles de configuration : Apc, Xcache, Off - ), - 'application' => array( - 'version' => '0.4.dev', // Permet de versionner les fichiers javascripts et css - 'debug' => true, //2 pour plus de messages - 'navigateur' => array( - 'controllersDir' => $baseNavigateurDir . 'app/controllers/', - 'modelsDir' => $baseNavigateurDir . 'app/models/', - 'viewsDir' => $baseNavigateurDir . 'app/views/', - 'pluginsDir' => $baseNavigateurDir . 'app/plugins/', - 'libraryDir' => $baseNavigateurDir . 'app/library/', - 'cacheDir' => $baseNavigateurDir . 'app/cache/' - ), - 'pilotage' => array( - 'controllersDir' => $basePilotageDir . 'app/controllers/', - 'modelsDir' => $basePilotageDir . 'app/models/', - 'viewsDir' => $basePilotageDir . 'app/views/', - 'pluginsDir' => $basePilotageDir . 'app/plugins/', - 'libraryDir' => $basePilotageDir . 'app/library/', - 'cacheDir' => $basePilotageDir . 'app/cache/', - 'helpersDir' => $basePilotageDir . 'app/helpers/', - 'validatorsDir' => $basePilotageDir . 'app/validators/' // Temporaire, TODO refactor de validator dans services. - ), - 'edition' => array( - 'fieldsDir' => $baseEditionDir . 'app/fields/', - 'utilDir' => $baseEditionDir . 'app/util/', - 'servicesDir' => $baseEditionDir . 'app/services/', - 'exemplesServicesDir' => $baseEditionDir . 'app/services/exemple/' - ), - 'services' => array( - 'controllersDir' => $baseServicesDir . 'igo_commun/app/controllers/', - 'viewsDir' => $baseServicesDir . 'igo_commun/app/views/' - ), - 'authentification' => array( - //'authentificationUri' => '/igo/services/igo_commun/public', - //'authentificationExterne' => false, // Si l'authentication externe est activée, le navigateur se fiera sur la variable $PHP_AUTH_USER - // sans valider le $PHP_AUTH_PW; Si elle est désactivé, mais que PHP_AUTH_USER et PHP_AUTH_PW sont présent, - // elle validera ces paramêtre en utilisant la configuration authenticationModule ci bas. - // Si elle est désactivé et que PHP_AUTH_USER n'est pas présent, une fenêtre de Connexion affichera. - 'module' => 'AuthentificationMSP', // Le nom de la classe responsable de l'authentification. Doit implémenter l'interface IAuthentification - 'activerSelectionRole' => false, // Détermine si un role doit être activé, ou si les permissions sont attribués selon tous les roles disponibles - 'permettreAccesAnonyme' => true, // Détermine si l'accès anomyme est permise pour le système - 'nomProfilAnonyme' => 'cn=GRAPP-VIG-MSP_ANONYME,ou=VIG,ou=PROD,ou=APP,ou=SSO,o=MSP' // Détermine le nom du profil à utiliser pour les utilisateurs anonymes. - ), - ), - 'mapserver' => array( - 'host' => 'host', - 'mapfileCacheDir'=> "mapfileCacheDir", - 'contextesCacheDir' => "contextes/", - 'couchesCacheDir' => "couches/", - 'mapserver_path' => "/cgi-wms/", - 'executable' => "mapserv.fcgi?map=", - 'mapfileInclude' => array() //tableau de chemin de mapfile devant être incluent dans tous les mapfiles IGO - //'url' => "/cgi-wms/mapserv.fcgi?" - ), - 'uri' => array( -'navigateur' => "/navigateur/", -'librairies' => "/librairie/", - 'services' => "/igo/services/", - 'api' => "/api/", - 'pilotage' => "/pilotage/" - ), - 'navigateur' => array( - 'OutilRapporterBogue' => array('lien' => 'http://geoegl.msp.gouv.qc.ca/mantis/login_page.php'), - 'OutilAjoutWMS' => array('urlPreenregistre' => "http://geoegl.msp.gouv.qc.ca/cgi-wms/adnInternetV2.fcgi," - . "http://wms.sst-sw.rncan.gc.ca/wms/toporama," - . "http://geoegl.msp.gouv.qc.ca/cgi-wms/inspq_icu.fcgi," - . "http://geoegl.msp.gouv.qc.ca/cgi-wms/gouvouvertqc.fcgi"), - 'OutilImportFichier' => array('urlService' => 'http://ogre.adc4gis.com/convert'), //Version en ligne du service - 'OutilExportSHP' => array('urlService' => 'http://ogre.adc4gis.com/convertJson'), //Version en ligne du service - 'Recherche' => array( - 'service' => '[gloV6]', - 'format' => 'json', - 'urlAppelant' => "" //Utiliser urlAppelant ou cle, pas les 2 - //'cle' => 'glo' - ) - ), - /*'cles' => array( - 'glo' => '123' - ),*/ - 'servicesExternes' => array( - 'gloV6' => 'http://pregeoegl.msp.gouv.qc.ca/Services/glo/V6/gloServeurHTTP.php', - 'regex' => array( - "#http://geoegl\.msp\.gouv\.qc\.ca/cgi-wms/(.)+\.fcgi#", - "#http://wms\.sst-sw\.rncan\.gc\.ca/wms/(.)+#" - ) - ), - // les configurations permettent d'appeler un fichier xml en mode rest et d'associer une clé avec un lien vers un fichier - 'configurations' => array( - 'defaut' => $baseXmlDir . 'defaut.xml', - 'editionSimple' => $baseXmlDir . 'editionSimple.xml' - ), - 'services' => array( - 'PointFeatureService' - ) -); From 5912aa937d972e923c90d6929347f25c694457e3 Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Tue, 4 Aug 2015 14:16:51 -0400 Subject: [PATCH 8/9] Bring back navigateur alias to keep http://localhost/navigateur/ behavior --- manifests/apache.pp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/manifests/apache.pp b/manifests/apache.pp index c5db04b..d35b361 100644 --- a/manifests/apache.pp +++ b/manifests/apache.pp @@ -29,6 +29,9 @@ { alias => '/igo_navigateur/', path => "${igoAppPath}/interfaces/navigateur/" }, + { + alias => '/navigateur/', + path => "${igoAppPath}/interfaces/navigateur/" }, { alias => '/api/', path => "${igoAppPath}/interfaces/navigateur/api/" }, From 260ee6e460c61ba94d9a861804645d15192a494d Mon Sep 17 00:00:00 2001 From: Simon Tremblay Date: Tue, 4 Aug 2015 14:44:49 -0400 Subject: [PATCH 9/9] Add travisci build status --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 805c751..808b4c4 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -#IGO - +#puppet-igo +[![Build Status](https://travis-ci.org/infra-geo-ouverte/puppet-igo.svg)](https://travis-ci.org/infra-geo-ouverte/puppet-igo) ####Table of Contents 1. [Overview - What is the IGO module?](#overview)