A curated list of libraries & SDKs for the Bluesky API and AT Protocol
1set :application, "sdk.blue"
2set :repository, "https://github.com/mackuba/sdk.blue.git"
3set :scm, :git
4set :keep_releases, 10
5set :use_sudo, false
6set :deploy_to, "/var/www/sdk.blue"
7set :deploy_via, :remote_cache
8set :public_children, []
9
10server "sdk.blue", :app, :web, :db, :primary => true
11
12before 'deploy:finalize_update', 'deploy:bundle_install'
13
14after 'deploy:update_code', 'deploy:link_shared'
15before 'deploy:create_symlink', 'deploy:build'
16after 'deploy', 'deploy:cleanup'
17
18namespace :deploy do
19 task :bundle_install do
20 run "cd #{release_path} && bundle config set --local deployment 'true'"
21 run "cd #{release_path} && bundle config set --local path '#{shared_path}/bundle'"
22 run "cd #{release_path} && bundle config set --local without 'development test'"
23 run "cd #{release_path} && bundle install --quiet"
24 end
25
26 task :link_shared do
27 run "mkdir -p #{release_path}/config"
28 run "ln -s #{shared_path}/auth.yml #{release_path}/config/auth.yml"
29 run "ln -s #{shared_path}/metadata.yml #{release_path}/_data/metadata.yml"
30 run "ln -s #{shared_path}/repos #{release_path}/tmp/repos"
31 end
32
33 task :build do
34 run "cd #{release_path} && RACK_ENV=production bundle exec jekyll build"
35 end
36
37 task :migrate do
38 end
39
40 task :fetch_metadata do
41 run "export RACK_ENV=production; cd #{current_path} && bundle exec rake fetch_metadata && bundle exec jekyll build"
42 end
43
44 task :with_fetch do
45 update_code
46
47 run "cd #{release_path} && RACK_ENV=production bundle exec rake fetch_metadata"
48
49 create_symlink
50 cleanup
51 end
52end