Commit 330f5492cb3bcda630be4f8cd931085746a9f490
1 parent
92a6ee95
Exists in
master
Add restore step
Showing
1 changed file
with
34 additions
and
8 deletions
Show diff stats
provision.sh
... | ... | @@ -17,7 +17,11 @@ yum -y install gitlab |
17 | 17 | # Coisas estranhas: |
18 | 18 | # |
19 | 19 | # Installing : gitlab-shell-2.4.0-5.1.noarch |
20 | +### Aparentemente, tanto as receitas quanto os specs, esperam que exista um usuário git | |
21 | +### criado nas máquinaso usuário git | |
20 | 22 | # id: git: no such user |
23 | + | |
24 | +### Isso não é uma coisa estranha, é o output padrão quando se instala o gitlab-shell | |
21 | 25 | # mkdir -p /var/lib/gitlab-shell/repositories/: OK |
22 | 26 | # mkdir -p /var/lib/gitlab-shell/.ssh: OK |
23 | 27 | # chmod 700 /var/lib/gitlab-shell/.ssh: OK |
... | ... | @@ -25,20 +29,27 @@ yum -y install gitlab |
25 | 29 | # chmod 600 /var/lib/gitlab-shell/.ssh/authorized_keys: OK |
26 | 30 | # chmod -R ug+rwX,o-rwx /var/lib/gitlab-shell/repositories/: OK |
27 | 31 | # find /var/lib/gitlab-shell/repositories/ -type d -exec chmod g+s {} ;: OK |
32 | + | |
28 | 33 | # |
29 | 34 | # <snip> |
30 | 35 | # |
31 | -# Installing : gitlab-7.6.2-13.2.noarch | |
36 | +# Installing : gitlab-7.6.2-13.2.noarch | |
37 | +### Isso é um erro no pacote do gitlab-7.6. Ele cria um link simbólico apontado | |
38 | +### para /var/lib/gitlab-assets, e depois tenta dar um chown, mas a pasta ainda não existe. | |
39 | +### Podemos fazer esse fix. | |
32 | 40 | # chown: cannot access ‘/var/lib/gitlab-assets’: No such file or directory |
41 | + | |
33 | 42 | # Redirecting to /bin/systemctl start redis.service |
34 | 43 | # rake aborted! |
44 | + | |
45 | +### No pacote do gitlab 8.5 eu simplesmente dei permissão git:git pra pasta /usr/lib/gitlab | |
35 | 46 | # Errno::EACCES: Permission denied - /usr/lib/gitlab/.gitlab_shell_secret |
36 | -# | |
47 | +# | |
37 | 48 | # Tasks: TOP => db:migrate:status => environment |
38 | 49 | # (See full trace by running task with --trace) |
39 | 50 | # rake aborted! |
40 | 51 | # Errno::EACCES: Permission denied - /usr/lib/gitlab/.gitlab_shell_secret |
41 | -# | |
52 | +# | |
42 | 53 | # Tasks: TOP => gitlab:setup => environment |
43 | 54 | # (See full trace by running task with --trace) |
44 | 55 | # I, [2016-04-25T22:50:47.389656 #11843] INFO -- : Writing /usr/lib/gitlab/public/assets/authbuttons/github_32-7d94ec26bfa902d9573dac174421752a.png |
... | ... | @@ -60,18 +71,18 @@ sudo -u postgres createuser git |
60 | 71 | cd /usr/lib/gitlab |
61 | 72 | sudo -u git bundle exec rake db:setup RAILS_ENV=production && touch /var/lib/gitlab/setup.done |
62 | 73 | |
63 | -sed -i 's,http://localhost:8080/,http://localhost:8080/gitlab,' /etc/gitlab-shell/config.yml | |
74 | +sed -i 's,http://localhost:8080/,http://localhost:8080/gitlab,' /etc/gitlab-shell/config.yml | |
64 | 75 | |
65 | 76 | echo 'production: redis://localhost:6379' > /usr/lib/gitlab/config/resque.yml |
66 | 77 | sed -i 's,localhost,localhost\n relative_url_root: /gitlab,' /etc/gitlab/gitlab.yml |
67 | 78 | |
68 | 79 | cat << EOF > /usr/lib/gitlab/config/initializers/gitlab_shell_secret_token.rb |
69 | 80 | Gitlab::Application.configure do |
70 | - config.relative_url_root = "/gitlab" | |
81 | + config.relative_url_root = "/gitlab" | |
71 | 82 | end |
72 | 83 | EOF |
73 | 84 | |
74 | -cat << EOF > /etc/nginx/conf.d/gitlab.conf | |
85 | +cat << EOF > /etc/nginx/conf.d/gitlab.conf | |
75 | 86 | upstream gitlab { |
76 | 87 | server 0.0.0.0:8080 fail_timeout=10s; |
77 | 88 | } |
... | ... | @@ -120,8 +131,23 @@ cd /usr/lib/gitlab && |
120 | 131 | sudo -u git bundle exec rake assets:precompile RAILS_ENV=production |
121 | 132 | |
122 | 133 | systemctl enable gitlab |
123 | -systemctl start gitlab | |
124 | - | |
134 | +systemctl start gitlab | |
135 | + | |
136 | +##### restore backup | |
137 | + | |
138 | +backup=$(echo *_backup.tar) | |
139 | +if [[ -e /vagrant/$backup ]]; then | |
140 | + printf "####################################################" | |
141 | + printf "Restaurando backup" | |
142 | + systemctl stop gitlab | |
143 | + sleep 3 | |
144 | + printf "Movendo backup para diretório correto" | |
145 | + install -D -m 755 -o git -g git /vagrant/$backup /var/lib/gitlab/backups | |
146 | + ### O task do gitlab espera uma resposta via bash, não sei se tem como mandarmos essa resposta via bash. | |
147 | + # (cd /usr/lib/gitlab && sudo -u git bundle exec rake gitlab:backup:restore RAILS_ENV=production) | |
148 | +else | |
149 | + printf "Backup não encontrado" | |
150 | +fi | |
125 | 151 | |
126 | 152 | |
127 | 153 | # bootstrap / provision | ... | ... |