Кампанията има за цел да адрасира различни групи (IT сферата, държавната администрация и гражданския сектор) за да разясни по човешки начин ползите от прозрачния и гъвкас процес на разработката на софтуер за нуждите на държавата.
Сайтът на кампанията е с отворен код и се задвижва от Ruby on Rails.
Трябва да имате Ruby 2.x и Bundler.
- Клонирайте си хранилището и влезте в папката.
- Изпълнете
bundle install
. - Създайте си
config/database.yml
файл. Може да използвате примерния вconfig/database.yml.example
. - Създайте
config/secrets.yml
файл. Може да използвате примерния вconfig/secrets.yml.example
. - Създайте
config/settings.yml
файл. Може да използвате примерния вconfig/settings.yml.example
. - Изпълнете
bundle exec rake db:setup
. - Стартирайте приложението с
bin/rails server
.
Трябва да имате работещо копие на localhost:3000.
Административният интерфейс е на адрес /admin
. По подразбиране има един
администратор с имейл admin@example.com
и парола password
.
Бележка: Всеки път, когато получавате нови промени от хранилището, използвайте командите:
bundle install
bundle exec rake db:migrate
за да подсигурите, че конфигурацията на проекта и на базата данни са най-новите.
Инсталацията на приложението в продукционен режим може да се извърши по много начини. Нашият избор е Capistrano за deployment, PostgreSQL база и Puma в съчетание с Nginx за application server. Puma процесите се управляват от Jungle. Първоначалната инсталация се прави с помощта на Capistrano::Puma.
Освен работеща PostgreSQL база, ще имате нужда и от header-файловете й, за да
може да се инсталира pg
Ruby библиотеката. На Debian-базирани системи може
да инсталирате libpq-dev
пакета.
Уверете се, че в environment променливите на потребителя, под чието име пускате
приложението, има RAILS_ENV=production
.
-
Изпълнете локално
bundle exec cap production deploy:check
. Задачата ще създаде необходимите пътища и ще се оплаче, ако липсват необходимите конфигурационни файлове. Направете необходимите корекции и се ъверете, че минава успешно. -
В
shared/gov_production_nginx.conf
ще е създаден конфигурационен файл за Nginx. Може да го активирате като направите symlink към него от/etc/nginx/sites-enabled
. -
Инсталирайте Puma Jungle. Ако имате
sudo
права, може да използвате следната команда:bundle exec cap production puma:jungle:install
. Бихте могли временно да разрешите на потребителwww-data
да изпълнява sudo команди като добавите следното в/etc/sudoers
:www-data ALL=(ALL:ALL) NOPASSWD: ALL
В противен случай, трябва да изпълните ръчно стъпките по инсталация, описани в тази задача.
-
Трябва да може да се осъществи връзка с базата данни, конфигурирана в
shared/config/database.yml
. -
Качете приложението с
bundle exec cap production deploy
. -
На сървъра изпълнете
service nginx reload
.
Чудесно! Ако нямате познания по html, редактирайте единствено нашия хакпад. А ако знаете как и имате желание и време - можете да редактирате и кодът (Само имайте на ум, че различни части от сайтът се повтарят - например секцията „митове“ е една и съща при страницата за IT, Държавна администрация и граждански сектор).
Благодарим!
Този код се разпространява под MIT лиценз.