Merge pull request #5622 from offlinehacker/panamax
panamax: new package and service
This commit is contained in:
commit
f85abb041a
|
@ -177,6 +177,8 @@
|
|||
cadvisor = 167;
|
||||
nylon = 168;
|
||||
apache-kafka = 169;
|
||||
panamax = 170;
|
||||
|
||||
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
|
||||
|
||||
nixbld = 30000; # start of range of uids
|
||||
|
@ -315,6 +317,7 @@
|
|||
kubernetes = 162;
|
||||
gitlab = 165;
|
||||
nylon = 166;
|
||||
panamax = 170;
|
||||
|
||||
# When adding a gid, make sure it doesn't match an existing
|
||||
# uid. Users and groups with the same name should have equal
|
||||
|
|
|
@ -104,6 +104,7 @@
|
|||
./services/backup/tarsnap.nix
|
||||
./services/cluster/fleet.nix
|
||||
./services/cluster/kubernetes.nix
|
||||
./services/cluster/panamax.nix
|
||||
./services/computing/torque/server.nix
|
||||
./services/computing/torque/mom.nix
|
||||
./services/continuous-integration/jenkins/default.nix
|
||||
|
|
153
nixos/modules/services/cluster/panamax.nix
Normal file
153
nixos/modules/services/cluster/panamax.nix
Normal file
|
@ -0,0 +1,153 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.panamax;
|
||||
|
||||
panamax_api = pkgs.panamax_api.override { dataDir = cfg.dataDir + "/api"; };
|
||||
panamax_ui = pkgs.panamax_ui.override { dataDir = cfg.dataDir + "/ui"; };
|
||||
|
||||
in {
|
||||
|
||||
##### Interface
|
||||
options.services.panamax = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to enable Panamax service.
|
||||
'';
|
||||
};
|
||||
|
||||
UIPort = mkOption {
|
||||
type = types.int;
|
||||
default = 8888;
|
||||
description = ''
|
||||
Panamax UI listening port.
|
||||
'';
|
||||
};
|
||||
|
||||
APIPort = mkOption {
|
||||
type = types.int;
|
||||
default = 3000;
|
||||
description = ''
|
||||
Panamax UI listening port.
|
||||
'';
|
||||
};
|
||||
|
||||
dataDir = mkOption {
|
||||
type = types.str;
|
||||
default = "/var/lib/panamax";
|
||||
description = ''
|
||||
Data dir for Panamax.
|
||||
'';
|
||||
};
|
||||
|
||||
fleetctlEndpoint = mkOption {
|
||||
type = types.str;
|
||||
default = "http://127.0.0.1:4001";
|
||||
description = ''
|
||||
Panamax fleetctl endpoint.
|
||||
'';
|
||||
};
|
||||
|
||||
journalEndpoint = mkOption {
|
||||
type = types.str;
|
||||
default = "http://127.0.0.1:19531";
|
||||
description = ''
|
||||
Panamax journal endpoint.
|
||||
'';
|
||||
};
|
||||
|
||||
secretKey = mkOption {
|
||||
type = types.str;
|
||||
default = "SomethingVeryLong.";
|
||||
description = ''
|
||||
Panamax secret key (do change this).
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
##### Implementation
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.panamax-api = {
|
||||
description = "Panamax API";
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" "fleet.service" "etcd.service" "docker.service" ];
|
||||
|
||||
path = [ panamax_api ];
|
||||
environment = {
|
||||
RAILS_ENV = "production";
|
||||
JOURNAL_ENDPOINT = cfg.journalEndpoint;
|
||||
FLEETCTL_ENDPOINT = cfg.fleetctlEndpoint;
|
||||
PANAMAX_DATABASE_PATH = "${cfg.dataDir}/api/db/mnt/db.sqlite3";
|
||||
};
|
||||
|
||||
preStart = ''
|
||||
rm -rf ${cfg.dataDir}/state/tmp
|
||||
mkdir -p ${cfg.dataDir}/api/{db/mnt,state/log,state/tmp}
|
||||
ln -sf ${panamax_api}/share/panamax-api/_db/{schema.rb,seeds.rb,migrate} ${cfg.dataDir}/api/db/
|
||||
|
||||
if [ ! -f ${cfg.dataDir}/.created ]; then
|
||||
bundle exec rake db:setup
|
||||
bundle exec rake db:seed
|
||||
bundle exec rake panamax:templates:load || true
|
||||
touch ${cfg.dataDir}/.created
|
||||
else
|
||||
bundle exec rake db:migrate
|
||||
fi
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${panamax_api}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.APIPort}";
|
||||
User = "panamax";
|
||||
Group = "panamax";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.panamax-ui = {
|
||||
description = "Panamax UI";
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" "panamax_api.service" ];
|
||||
|
||||
path = [ panamax_ui ];
|
||||
environment = {
|
||||
RAILS_ENV = "production";
|
||||
JOURNAL_ENDPOINT = cfg.journalEndpoint;
|
||||
PMX_API_PORT_3000_TCP_ADDR = "localhost";
|
||||
PMX_API_PORT_3000_TCP_PORT = toString cfg.APIPort;
|
||||
SECRET_KEY_BASE = cfg.secretKey;
|
||||
};
|
||||
|
||||
preStart = ''
|
||||
rm -rf ${cfg.dataDir}/state/tmp
|
||||
mkdir -p ${cfg.dataDir}/ui/state/{log,tmp}
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${panamax_ui}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.UIPort}";
|
||||
User = "panamax";
|
||||
Group = "panamax";
|
||||
};
|
||||
};
|
||||
|
||||
users.extraUsers.panamax =
|
||||
{ uid = config.ids.uids.panamax;
|
||||
description = "Panamax user";
|
||||
createHome = true;
|
||||
home = cfg.dataDir;
|
||||
extraGroups = [ "docker" ];
|
||||
};
|
||||
|
||||
services.journald.enableHttpGateway = mkDefault true;
|
||||
services.fleet.enable = mkDefault true;
|
||||
virtualisation.docker.enable = mkDefault true;
|
||||
|
||||
environment.systemPackages = [ panamax_api panamax_ui ];
|
||||
users.extraGroups.panamax.gid = config.ids.gids.panamax;
|
||||
};
|
||||
}
|
|
@ -300,6 +300,7 @@ in rec {
|
|||
tests.nfs3 = callTest tests/nfs.nix { version = 3; };
|
||||
tests.nsd = callTest tests/nsd.nix {};
|
||||
tests.openssh = callTest tests/openssh.nix {};
|
||||
tests.panamax = scrubDrv (import tests/panamax.nix { system = "x86_64-linux"; });
|
||||
tests.peerflix = callTest tests/peerflix.nix {};
|
||||
tests.printing = callTest tests/printing.nix {};
|
||||
tests.proxy = callTest tests/proxy.nix {};
|
||||
|
|
18
nixos/tests/panamax.nix
Normal file
18
nixos/tests/panamax.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
import ./make-test.nix {
|
||||
name = "panamax";
|
||||
|
||||
machine = { config, pkgs, ... }: {
|
||||
services.panamax.enable = true;
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
startAll;
|
||||
$machine->waitForUnit("panamax-api.service");
|
||||
$machine->waitForUnit("panamax-ui.service");
|
||||
$machine->waitForOpenPort(3000);
|
||||
$machine->waitForOpenPort(8888);
|
||||
$machine->succeed("curl --fail http://localhost:8888/ > /dev/null");
|
||||
$machine->shutdown;
|
||||
'';
|
||||
}
|
23
pkgs/applications/networking/cluster/panamax/Gemfile-api
Normal file
23
pkgs/applications/networking/cluster/panamax/Gemfile-api
Normal file
|
@ -0,0 +1,23 @@
|
|||
source 'https://rubygems.org'
|
||||
|
||||
gem 'rails', '4.1.7'
|
||||
gem 'puma', '2.8.2'
|
||||
gem 'sqlite3', '1.3.9'
|
||||
gem 'faraday_middleware', '0.9.0'
|
||||
gem 'docker-api', '1.13.0', require: 'docker'
|
||||
gem 'fleet-api', '0.6.0', require: 'fleet'
|
||||
gem 'active_model_serializers', '0.9.0'
|
||||
gem 'octokit', '3.2.0'
|
||||
gem 'kmts', '2.0.1'
|
||||
|
||||
group :test, :development do
|
||||
gem 'rspec-rails'
|
||||
gem 'its'
|
||||
end
|
||||
|
||||
group :test do
|
||||
gem 'coveralls', '0.7.0'
|
||||
gem 'shoulda-matchers', '2.6.1'
|
||||
gem 'database_cleaner', '1.3.0'
|
||||
gem 'webmock', '1.20.0'
|
||||
end
|
164
pkgs/applications/networking/cluster/panamax/Gemfile-api.lock
Normal file
164
pkgs/applications/networking/cluster/panamax/Gemfile-api.lock
Normal file
|
@ -0,0 +1,164 @@
|
|||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
actionmailer (4.1.7)
|
||||
actionpack (= 4.1.7)
|
||||
actionview (= 4.1.7)
|
||||
mail (~> 2.5, >= 2.5.4)
|
||||
actionpack (4.1.7)
|
||||
actionview (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
rack (~> 1.5.2)
|
||||
rack-test (~> 0.6.2)
|
||||
actionview (4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
builder (~> 3.1)
|
||||
erubis (~> 2.7.0)
|
||||
active_model_serializers (0.9.0)
|
||||
activemodel (>= 3.2)
|
||||
activemodel (4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
builder (~> 3.1)
|
||||
activerecord (4.1.7)
|
||||
activemodel (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
arel (~> 5.0.0)
|
||||
activesupport (4.1.7)
|
||||
i18n (~> 0.6, >= 0.6.9)
|
||||
json (~> 1.7, >= 1.7.7)
|
||||
minitest (~> 5.1)
|
||||
thread_safe (~> 0.1)
|
||||
tzinfo (~> 1.1)
|
||||
addressable (2.3.6)
|
||||
archive-tar-minitar (0.5.2)
|
||||
arel (5.0.1.20140414130214)
|
||||
builder (3.2.2)
|
||||
coveralls (0.7.0)
|
||||
multi_json (~> 1.3)
|
||||
rest-client
|
||||
simplecov (>= 0.7)
|
||||
term-ansicolor
|
||||
thor
|
||||
crack (0.4.2)
|
||||
safe_yaml (~> 1.0.0)
|
||||
database_cleaner (1.3.0)
|
||||
diff-lcs (1.2.5)
|
||||
docile (1.1.5)
|
||||
docker-api (1.13.0)
|
||||
archive-tar-minitar
|
||||
excon (>= 0.37.0)
|
||||
json
|
||||
erubis (2.7.0)
|
||||
excon (0.37.0)
|
||||
faraday (0.8.9)
|
||||
multipart-post (~> 1.2.0)
|
||||
faraday_middleware (0.9.0)
|
||||
faraday (>= 0.7.4, < 0.9)
|
||||
fleet-api (0.6.0)
|
||||
faraday (= 0.8.9)
|
||||
faraday_middleware (= 0.9.0)
|
||||
hike (1.2.3)
|
||||
i18n (0.6.11)
|
||||
its (0.2.0)
|
||||
rspec-core
|
||||
json (1.8.1)
|
||||
kmts (2.0.1)
|
||||
mail (2.6.3)
|
||||
mime-types (>= 1.16, < 3)
|
||||
mime-types (2.4.3)
|
||||
minitest (5.4.3)
|
||||
multi_json (1.10.1)
|
||||
multipart-post (1.2.0)
|
||||
octokit (3.2.0)
|
||||
sawyer (~> 0.5.3)
|
||||
puma (2.8.2)
|
||||
rack (>= 1.1, < 2.0)
|
||||
rack (1.5.2)
|
||||
rack-test (0.6.2)
|
||||
rack (>= 1.0)
|
||||
rails (4.1.7)
|
||||
actionmailer (= 4.1.7)
|
||||
actionpack (= 4.1.7)
|
||||
actionview (= 4.1.7)
|
||||
activemodel (= 4.1.7)
|
||||
activerecord (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
bundler (>= 1.3.0, < 2.0)
|
||||
railties (= 4.1.7)
|
||||
sprockets-rails (~> 2.0)
|
||||
railties (4.1.7)
|
||||
actionpack (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
rake (>= 0.8.7)
|
||||
thor (>= 0.18.1, < 2.0)
|
||||
rake (10.4.0)
|
||||
rest-client (1.6.7)
|
||||
mime-types (>= 1.16)
|
||||
rspec-core (3.1.7)
|
||||
rspec-support (~> 3.1.0)
|
||||
rspec-expectations (3.1.2)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.1.0)
|
||||
rspec-mocks (3.1.3)
|
||||
rspec-support (~> 3.1.0)
|
||||
rspec-rails (3.1.0)
|
||||
actionpack (>= 3.0)
|
||||
activesupport (>= 3.0)
|
||||
railties (>= 3.0)
|
||||
rspec-core (~> 3.1.0)
|
||||
rspec-expectations (~> 3.1.0)
|
||||
rspec-mocks (~> 3.1.0)
|
||||
rspec-support (~> 3.1.0)
|
||||
rspec-support (3.1.2)
|
||||
safe_yaml (1.0.4)
|
||||
sawyer (0.5.4)
|
||||
addressable (~> 2.3.5)
|
||||
faraday (~> 0.8, < 0.10)
|
||||
shoulda-matchers (2.6.1)
|
||||
activesupport (>= 3.0.0)
|
||||
simplecov (0.9.1)
|
||||
docile (~> 1.1.0)
|
||||
multi_json (~> 1.0)
|
||||
simplecov-html (~> 0.8.0)
|
||||
simplecov-html (0.8.0)
|
||||
sprockets (2.12.3)
|
||||
hike (~> 1.2)
|
||||
multi_json (~> 1.0)
|
||||
rack (~> 1.0)
|
||||
tilt (~> 1.1, != 1.3.0)
|
||||
sprockets-rails (2.2.0)
|
||||
actionpack (>= 3.0)
|
||||
activesupport (>= 3.0)
|
||||
sprockets (>= 2.8, < 4.0)
|
||||
sqlite3 (1.3.9)
|
||||
term-ansicolor (1.3.0)
|
||||
tins (~> 1.0)
|
||||
thor (0.19.1)
|
||||
thread_safe (0.3.4)
|
||||
tilt (1.4.1)
|
||||
tins (1.3.0)
|
||||
tzinfo (1.2.2)
|
||||
thread_safe (~> 0.1)
|
||||
webmock (1.20.0)
|
||||
addressable (>= 2.3.6)
|
||||
crack (>= 0.3.2)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
active_model_serializers (= 0.9.0)
|
||||
coveralls (= 0.7.0)
|
||||
database_cleaner (= 1.3.0)
|
||||
docker-api (= 1.13.0)
|
||||
faraday_middleware (= 0.9.0)
|
||||
fleet-api (= 0.6.0)
|
||||
its
|
||||
kmts (= 2.0.1)
|
||||
octokit (= 3.2.0)
|
||||
puma (= 2.8.2)
|
||||
rails (= 4.1.7)
|
||||
rspec-rails
|
||||
shoulda-matchers (= 2.6.1)
|
||||
sqlite3 (= 1.3.9)
|
||||
webmock (= 1.20.0)
|
30
pkgs/applications/networking/cluster/panamax/Gemfile-ui
Normal file
30
pkgs/applications/networking/cluster/panamax/Gemfile-ui
Normal file
|
@ -0,0 +1,30 @@
|
|||
source 'https://rubygems.org'
|
||||
|
||||
gem 'rails', '4.1.7'
|
||||
gem 'puma', '2.8.2'
|
||||
gem 'sass', '3.3.9'
|
||||
gem 'therubyracer', '0.12.1', platforms: :ruby
|
||||
gem 'haml', '4.0.5'
|
||||
gem 'uglifier', '2.5.1'
|
||||
gem 'ctl_base_ui'
|
||||
gem 'activeresource', '4.0.0'
|
||||
gem 'kramdown', '1.4.0'
|
||||
gem 'zeroclipboard-rails'
|
||||
|
||||
|
||||
group :test, :development do
|
||||
gem 'rspec-rails', '2.14.2'
|
||||
gem 'capybara', '2.3.0'
|
||||
gem 'teaspoon', '0.8.0'
|
||||
gem 'phantomjs', '1.9.7.1'
|
||||
gem 'dotenv-rails', '0.11.1'
|
||||
gem 'pry'
|
||||
gem 'pry-byebug'
|
||||
gem 'pry-stack_explorer'
|
||||
end
|
||||
|
||||
group :test do
|
||||
gem 'webmock', '1.18.0'
|
||||
gem 'sinatra', '1.4.5'
|
||||
gem 'coveralls', '0.7.0'
|
||||
end
|
217
pkgs/applications/networking/cluster/panamax/Gemfile-ui.lock
Normal file
217
pkgs/applications/networking/cluster/panamax/Gemfile-ui.lock
Normal file
|
@ -0,0 +1,217 @@
|
|||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
actionmailer (4.1.7)
|
||||
actionpack (= 4.1.7)
|
||||
actionview (= 4.1.7)
|
||||
mail (~> 2.5, >= 2.5.4)
|
||||
actionpack (4.1.7)
|
||||
actionview (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
rack (~> 1.5.2)
|
||||
rack-test (~> 0.6.2)
|
||||
actionview (4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
builder (~> 3.1)
|
||||
erubis (~> 2.7.0)
|
||||
activemodel (4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
builder (~> 3.1)
|
||||
activerecord (4.1.7)
|
||||
activemodel (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
arel (~> 5.0.0)
|
||||
activeresource (4.0.0)
|
||||
activemodel (~> 4.0)
|
||||
activesupport (~> 4.0)
|
||||
rails-observers (~> 0.1.1)
|
||||
activesupport (4.1.7)
|
||||
i18n (~> 0.6, >= 0.6.9)
|
||||
json (~> 1.7, >= 1.7.7)
|
||||
minitest (~> 5.1)
|
||||
thread_safe (~> 0.1)
|
||||
tzinfo (~> 1.1)
|
||||
addressable (2.3.6)
|
||||
arel (5.0.1.20140414130214)
|
||||
binding_of_caller (0.7.2)
|
||||
debug_inspector (>= 0.0.1)
|
||||
builder (3.2.2)
|
||||
byebug (3.5.1)
|
||||
columnize (~> 0.8)
|
||||
debugger-linecache (~> 1.2)
|
||||
slop (~> 3.6)
|
||||
capybara (2.3.0)
|
||||
mime-types (>= 1.16)
|
||||
nokogiri (>= 1.3.3)
|
||||
rack (>= 1.0.0)
|
||||
rack-test (>= 0.5.4)
|
||||
xpath (~> 2.0)
|
||||
coderay (1.1.0)
|
||||
columnize (0.8.9)
|
||||
coveralls (0.7.0)
|
||||
multi_json (~> 1.3)
|
||||
rest-client
|
||||
simplecov (>= 0.7)
|
||||
term-ansicolor
|
||||
thor
|
||||
crack (0.4.2)
|
||||
safe_yaml (~> 1.0.0)
|
||||
ctl_base_ui (0.0.4)
|
||||
haml (~> 4.0)
|
||||
jquery-rails (~> 3.1)
|
||||
jquery-ui-rails (~> 4.2)
|
||||
rails (~> 4.1)
|
||||
sass (~> 3.3)
|
||||
debug_inspector (0.0.2)
|
||||
debugger-linecache (1.2.0)
|
||||
diff-lcs (1.2.5)
|
||||
docile (1.1.5)
|
||||
dotenv (0.11.1)
|
||||
dotenv-deployment (~> 0.0.2)
|
||||
dotenv-deployment (0.0.2)
|
||||
dotenv-rails (0.11.1)
|
||||
dotenv (= 0.11.1)
|
||||
erubis (2.7.0)
|
||||
execjs (2.2.1)
|
||||
haml (4.0.5)
|
||||
tilt
|
||||
hike (1.2.3)
|
||||
i18n (0.6.11)
|
||||
jquery-rails (3.1.2)
|
||||
railties (>= 3.0, < 5.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
jquery-ui-rails (4.2.1)
|
||||
railties (>= 3.2.16)
|
||||
json (1.8.1)
|
||||
kramdown (1.4.0)
|
||||
libv8 (3.16.14.7)
|
||||
mail (2.6.3)
|
||||
mime-types (>= 1.16, < 3)
|
||||
method_source (0.8.2)
|
||||
mime-types (2.4.3)
|
||||
mini_portile (0.6.0)
|
||||
minitest (5.4.3)
|
||||
multi_json (1.10.1)
|
||||
nokogiri (1.6.2.1)
|
||||
mini_portile (= 0.6.0)
|
||||
phantomjs (1.9.7.1)
|
||||
pry (0.10.1)
|
||||
coderay (~> 1.1.0)
|
||||
method_source (~> 0.8.1)
|
||||
slop (~> 3.4)
|
||||
pry-byebug (2.0.0)
|
||||
byebug (~> 3.4)
|
||||
pry (~> 0.10)
|
||||
pry-stack_explorer (0.4.9.1)
|
||||
binding_of_caller (>= 0.7)
|
||||
pry (>= 0.9.11)
|
||||
puma (2.8.2)
|
||||
rack (>= 1.1, < 2.0)
|
||||
rack (1.5.2)
|
||||
rack-protection (1.5.3)
|
||||
rack
|
||||
rack-test (0.6.2)
|
||||
rack (>= 1.0)
|
||||
rails (4.1.7)
|
||||
actionmailer (= 4.1.7)
|
||||
actionpack (= 4.1.7)
|
||||
actionview (= 4.1.7)
|
||||
activemodel (= 4.1.7)
|
||||
activerecord (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
bundler (>= 1.3.0, < 2.0)
|
||||
railties (= 4.1.7)
|
||||
sprockets-rails (~> 2.0)
|
||||
rails-observers (0.1.2)
|
||||
activemodel (~> 4.0)
|
||||
railties (4.1.7)
|
||||
actionpack (= 4.1.7)
|
||||
activesupport (= 4.1.7)
|
||||
rake (>= 0.8.7)
|
||||
thor (>= 0.18.1, < 2.0)
|
||||
rake (10.4.1)
|
||||
ref (1.0.5)
|
||||
rest-client (1.6.7)
|
||||
mime-types (>= 1.16)
|
||||
rspec-core (2.14.8)
|
||||
rspec-expectations (2.14.5)
|
||||
diff-lcs (>= 1.1.3, < 2.0)
|
||||
rspec-mocks (2.14.6)
|
||||
rspec-rails (2.14.2)
|
||||
actionpack (>= 3.0)
|
||||
activemodel (>= 3.0)
|
||||
activesupport (>= 3.0)
|
||||
railties (>= 3.0)
|
||||
rspec-core (~> 2.14.0)
|
||||
rspec-expectations (~> 2.14.0)
|
||||
rspec-mocks (~> 2.14.0)
|
||||
safe_yaml (1.0.3)
|
||||
sass (3.3.9)
|
||||
simplecov (0.9.1)
|
||||
docile (~> 1.1.0)
|
||||
multi_json (~> 1.0)
|
||||
simplecov-html (~> 0.8.0)
|
||||
simplecov-html (0.8.0)
|
||||
sinatra (1.4.5)
|
||||
rack (~> 1.4)
|
||||
rack-protection (~> 1.4)
|
||||
tilt (~> 1.3, >= 1.3.4)
|
||||
slop (3.6.0)
|
||||
sprockets (2.12.3)
|
||||
hike (~> 1.2)
|
||||
multi_json (~> 1.0)
|
||||
rack (~> 1.0)
|
||||
tilt (~> 1.1, != 1.3.0)
|
||||
sprockets-rails (2.2.2)
|
||||
actionpack (>= 3.0)
|
||||
activesupport (>= 3.0)
|
||||
sprockets (>= 2.8, < 4.0)
|
||||
teaspoon (0.8.0)
|
||||
railties (>= 3.2.5, < 5)
|
||||
term-ansicolor (1.3.0)
|
||||
tins (~> 1.0)
|
||||
therubyracer (0.12.1)
|
||||
libv8 (~> 3.16.14.0)
|
||||
ref
|
||||
thor (0.19.1)
|
||||
thread_safe (0.3.4)
|
||||
tilt (1.4.1)
|
||||
tins (1.1.0)
|
||||
tzinfo (1.2.2)
|
||||
thread_safe (~> 0.1)
|
||||
uglifier (2.5.1)
|
||||
execjs (>= 0.3.0)
|
||||
json (>= 1.8.0)
|
||||
webmock (1.18.0)
|
||||
addressable (>= 2.3.6)
|
||||
crack (>= 0.3.2)
|
||||
xpath (2.0.0)
|
||||
nokogiri (~> 1.3)
|
||||
zeroclipboard-rails (0.1.0)
|
||||
railties (>= 3.1)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
activeresource (= 4.0.0)
|
||||
capybara (= 2.3.0)
|
||||
coveralls (= 0.7.0)
|
||||
ctl_base_ui
|
||||
dotenv-rails (= 0.11.1)
|
||||
haml (= 4.0.5)
|
||||
kramdown (= 1.4.0)
|
||||
phantomjs (= 1.9.7.1)
|
||||
pry
|
||||
pry-byebug
|
||||
pry-stack_explorer
|
||||
puma (= 2.8.2)
|
||||
rails (= 4.1.7)
|
||||
rspec-rails (= 2.14.2)
|
||||
sass (= 3.3.9)
|
||||
sinatra (= 1.4.5)
|
||||
teaspoon (= 0.8.0)
|
||||
therubyracer (= 0.12.1)
|
||||
uglifier (= 2.5.1)
|
||||
webmock (= 1.18.0)
|
||||
zeroclipboard-rails
|
75
pkgs/applications/networking/cluster/panamax/api.nix
Normal file
75
pkgs/applications/networking/cluster/panamax/api.nix
Normal file
|
@ -0,0 +1,75 @@
|
|||
{ stdenv, buildEnv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler_HEAD
|
||||
, ruby, libxslt, libxml2, sqlite, openssl, cacert, docker
|
||||
, dataDir ? "/var/lib/panamax-api" }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
let
|
||||
database_yml = builtins.toFile "database.yml" ''
|
||||
production:
|
||||
adapter: sqlite3
|
||||
database: <%= ENV["PANAMAX_DATABASE_PATH"] || "${dataDir}/db/mnt/db.sqlite3" %>
|
||||
timeout: 5000
|
||||
'';
|
||||
env = bundlerEnv {
|
||||
name = "panamax-api-gems";
|
||||
inherit ruby;
|
||||
gemset = ./gemset-api.nix;
|
||||
gemfile = ./Gemfile-api;
|
||||
lockfile = ./Gemfile-api.lock;
|
||||
};
|
||||
bundler = bundler_HEAD.override { inherit ruby; };
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "panamax-api-${version}";
|
||||
version = "0.2.11";
|
||||
|
||||
src = fetchgit {
|
||||
rev = "refs/tags/v${version}";
|
||||
url = "git://github.com/CenturyLinkLabs/panamax-api";
|
||||
sha256 = "01sz7jibn1rqfga85pr4p8wk6jfldzfaxj1726vs6znmcwhfkcgj";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper sqlite openssl env.ruby bundler ];
|
||||
|
||||
setSourceRoot = ''
|
||||
mkdir -p $out/share
|
||||
cp -R panamax-api $out/share/panamax-api
|
||||
export sourceRoot="$out/share/panamax-api"
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
find . -type f -exec sed -e 's|/usr/bin/docker|${docker}/bin/docker|g' -i "{}" \;
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
export HOME=$PWD
|
||||
export GEM_HOME=${env}/${env.ruby.gemPath}
|
||||
export RAILS_ENV=production
|
||||
|
||||
ln -sf ${database_yml} config/database.yml
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
rm -rf log tmp
|
||||
mv ./db ./_db
|
||||
ln -sf ${dataDir}/{db,state/log,state/tmp} .
|
||||
|
||||
mkdir -p $out/bin
|
||||
makeWrapper bin/bundle "$out/bin/bundle" \
|
||||
--run "cd $out/share/panamax-api" \
|
||||
--prefix "PATH" : "$out/share/panamax-api/bin:${env.ruby}/bin:$PATH" \
|
||||
--prefix "HOME" : "$out/share/panamax-api" \
|
||||
--prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
|
||||
--prefix "OPENSSL_X509_CERT_FILE" : "${cacert}/etc/ca-bundle.crt" \
|
||||
--prefix "SSL_CERT_FILE" : "${cacert}/etc/ca-bundle.crt" \
|
||||
--prefix "GEM_PATH" : "$out/share/panamax-api:${bundler}/${env.ruby.gemPath}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/CenturyLinkLabs/panamax-api;
|
||||
description = "The API behind The Panamax UI";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ matejc offline ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
571
pkgs/applications/networking/cluster/panamax/gemset-api.nix
Normal file
571
pkgs/applications/networking/cluster/panamax/gemset-api.nix
Normal file
|
@ -0,0 +1,571 @@
|
|||
let
|
||||
pkgs = import <nixpkgs> { };
|
||||
in {
|
||||
"actionmailer" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0qjv5akjbpgd4cx518k522mssvc3y3nki65hi6fj5nbzi7a6rwq5";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"actionview"
|
||||
"mail"
|
||||
];
|
||||
};
|
||||
"actionpack" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "07y1ny00h69xklq260smyl5md052f617gqrzkyw5sxafs5z25zax";
|
||||
};
|
||||
dependencies = [
|
||||
"actionview"
|
||||
"activesupport"
|
||||
"rack"
|
||||
"rack-test"
|
||||
];
|
||||
};
|
||||
"actionview" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "06sp37gfpn2jn7j6vlpp1y6vfi5kig60vyvixrjhyz0g4vgm13ax";
|
||||
};
|
||||
dependencies = [
|
||||
"activesupport"
|
||||
"builder"
|
||||
"erubis"
|
||||
];
|
||||
};
|
||||
"active_model_serializers" = {
|
||||
version = "0.9.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ws3gx3wwlm17w7k0agwzmcmww6627lvqaqm828lzm3g1xqilkkl";
|
||||
};
|
||||
dependencies = [
|
||||
"activemodel"
|
||||
];
|
||||
};
|
||||
"activemodel" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0rlqzz25l7vsphgkilg80kmk20d9h357awi27ax6zzb9klkqh0jr";
|
||||
};
|
||||
dependencies = [
|
||||
"activesupport"
|
||||
"builder"
|
||||
];
|
||||
};
|
||||
"activerecord" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0j4r0m32mjbwmz9gs8brln35jzr1cn7h585ggj0w0f1ai4hjsby5";
|
||||
};
|
||||
dependencies = [
|
||||
"activemodel"
|
||||
"activesupport"
|
||||
"arel"
|
||||
];
|
||||
};
|
||||
"activesupport" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "13i3mz66d5kp5y39gjwmcfqv0wb6mxm5k1nnz40wvd38dsf7n3bs";
|
||||
};
|
||||
dependencies = [
|
||||
"i18n"
|
||||
"json"
|
||||
"minitest"
|
||||
"thread_safe"
|
||||
"tzinfo"
|
||||
];
|
||||
};
|
||||
"addressable" = {
|
||||
version = "2.3.6";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "137fj0whmn1kvaq8wjalp8x4qbblwzvg3g4bfx8d8lfi6f0w48p8";
|
||||
};
|
||||
};
|
||||
"archive-tar-minitar" = {
|
||||
version = "0.5.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1j666713r3cc3wb0042x0wcmq2v11vwwy5pcaayy5f0lnd26iqig";
|
||||
};
|
||||
};
|
||||
"arel" = {
|
||||
version = "5.0.1.20140414130214";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9";
|
||||
};
|
||||
};
|
||||
"builder" = {
|
||||
version = "3.2.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
|
||||
};
|
||||
};
|
||||
"coveralls" = {
|
||||
version = "0.7.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0sz30d7b83qqsj3i0fr691w05d62wj7x3afh0ryjkqkis3fq94j4";
|
||||
};
|
||||
dependencies = [
|
||||
"multi_json"
|
||||
"rest-client"
|
||||
"simplecov"
|
||||
"term-ansicolor"
|
||||
"thor"
|
||||
];
|
||||
};
|
||||
"crack" = {
|
||||
version = "0.4.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a";
|
||||
};
|
||||
dependencies = [
|
||||
"safe_yaml"
|
||||
];
|
||||
};
|
||||
"database_cleaner" = {
|
||||
version = "1.3.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "19w25yda684pg29bggq26wy4lpyjvzscwg2hx3hmmmpysiwfnxgn";
|
||||
};
|
||||
};
|
||||
"diff-lcs" = {
|
||||
version = "1.2.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
|
||||
};
|
||||
};
|
||||
"docile" = {
|
||||
version = "1.1.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
|
||||
};
|
||||
};
|
||||
"docker-api" = {
|
||||
version = "1.13.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1rara27gn7lxaf12dqkx8s1clssg10jndfcy4wz2fv6ms1i1lnp6";
|
||||
};
|
||||
dependencies = [
|
||||
"archive-tar-minitar"
|
||||
"excon"
|
||||
"json"
|
||||
];
|
||||
};
|
||||
"erubis" = {
|
||||
version = "2.7.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
|
||||
};
|
||||
};
|
||||
"excon" = {
|
||||
version = "0.37.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "05x7asmsq5m419n1lhzk9bic02gwng4cqmrcqsfnd6kmkwm8csv2";
|
||||
};
|
||||
};
|
||||
"faraday" = {
|
||||
version = "0.8.9";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "17d79fsgx0xwh0mfxyz5pbr435qlw79phlfvifc546w2axdkp718";
|
||||
};
|
||||
dependencies = [
|
||||
"multipart-post"
|
||||
];
|
||||
};
|
||||
"faraday_middleware" = {
|
||||
version = "0.9.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1kwvi2sdxd6j764a7q5iir73dw2v6816zx3l8cgfv0wr2m47icq2";
|
||||
};
|
||||
dependencies = [
|
||||
"faraday"
|
||||
];
|
||||
};
|
||||
"fleet-api" = {
|
||||
version = "0.6.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0136mzc0fxp6mzh38n6xbg87cw9g9vq1nrlr3ylazbflvmlxgan6";
|
||||
};
|
||||
dependencies = [
|
||||
"faraday"
|
||||
"faraday_middleware"
|
||||
];
|
||||
};
|
||||
"hike" = {
|
||||
version = "1.2.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm";
|
||||
};
|
||||
};
|
||||
"i18n" = {
|
||||
version = "0.6.11";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0fwjlgmgry2blf8zlxn9c555cf4a16p287l599kz5104ncjxlzdk";
|
||||
};
|
||||
};
|
||||
"its" = {
|
||||
version = "0.2.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0rxwds9ipqp48mzqcaxzmfcqhawazg0zlhc1avv3i2cmm3np1z8g";
|
||||
};
|
||||
dependencies = [
|
||||
"rspec-core"
|
||||
];
|
||||
};
|
||||
"json" = {
|
||||
version = "1.8.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0002bsycvizvkmk1jyv8px1hskk6wrjfk4f7x5byi8gxm6zzn6wn";
|
||||
};
|
||||
};
|
||||
"kmts" = {
|
||||
version = "2.0.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1wk680q443lg35a25am6i8xawf16iqg5xnq1m8xd2gib4dsy1d8v";
|
||||
};
|
||||
};
|
||||
"mail" = {
|
||||
version = "2.6.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
|
||||
};
|
||||
dependencies = [
|
||||
"mime-types"
|
||||
];
|
||||
};
|
||||
"mime-types" = {
|
||||
version = "2.4.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "16nissnb31wj7kpcaynx4gr67i7pbkzccfg8k7xmplbkla4rmwiq";
|
||||
};
|
||||
};
|
||||
"minitest" = {
|
||||
version = "5.4.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ws2cphg9jh45nrvs43s2ww5r14nb026bwlbwwpi0jz6qsqm86x4";
|
||||
};
|
||||
};
|
||||
"multi_json" = {
|
||||
version = "1.10.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
|
||||
};
|
||||
};
|
||||
"multipart-post" = {
|
||||
version = "1.2.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "12p7lnmc52di1r4h73h6xrpppplzyyhani9p7wm8l4kgf1hnmwnc";
|
||||
};
|
||||
};
|
||||
"octokit" = {
|
||||
version = "3.2.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "07ll3x1hv72zssb4hkdw56xg3xk6x4fch4yf38zljvbh388r11ng";
|
||||
};
|
||||
dependencies = [
|
||||
"sawyer"
|
||||
];
|
||||
};
|
||||
"puma" = {
|
||||
version = "2.8.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1l57fmf8vyxfjv7ab5znq0k339cym5ghnm5xxfvd1simjp73db0k";
|
||||
};
|
||||
dependencies = [
|
||||
"rack"
|
||||
];
|
||||
buildInputs = [ pkgs.openssl ];
|
||||
};
|
||||
"rack" = {
|
||||
version = "1.5.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
|
||||
};
|
||||
};
|
||||
"rack-test" = {
|
||||
version = "0.6.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "01mk715ab5qnqf6va8k3hjsvsmplrfqpz6g58qw4m3l8mim0p4ky";
|
||||
};
|
||||
dependencies = [
|
||||
"rack"
|
||||
];
|
||||
};
|
||||
"rails" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "059mpljplmhfz8rr4hk40q67fllcpsy809m4mwwbkm8qwif2z5r0";
|
||||
};
|
||||
dependencies = [
|
||||
"actionmailer"
|
||||
"actionpack"
|
||||
"actionview"
|
||||
"activemodel"
|
||||
"activerecord"
|
||||
"activesupport"
|
||||
"railties"
|
||||
"sprockets-rails"
|
||||
];
|
||||
};
|
||||
"railties" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1n08h0rgj0aq5lvslnih6lvqz9wadpz6nnb25i4qhp37fhhyz9yz";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"activesupport"
|
||||
"rake"
|
||||
"thor"
|
||||
];
|
||||
};
|
||||
"rake" = {
|
||||
version = "10.4.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0a10xzqc1lh6gjkajkslr0n40wjrniyiyzxkp9m5fc8wf7b74zw8";
|
||||
};
|
||||
};
|
||||
"rest-client" = {
|
||||
version = "1.6.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0nn7zalgidz2yj0iqh3xvzh626krm2al79dfiij19jdhp0rk8853";
|
||||
};
|
||||
dependencies = [
|
||||
"mime-types"
|
||||
];
|
||||
};
|
||||
"rspec-core" = {
|
||||
version = "3.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "01bawvln663gffljwzpq3mrpa061cghjbvfbq15jvhmip3csxqc9";
|
||||
};
|
||||
dependencies = [
|
||||
"rspec-support"
|
||||
];
|
||||
};
|
||||
"rspec-expectations" = {
|
||||
version = "3.1.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0m8d36wng1lpbcs54zhg1rxh63rgj345k3p0h0c06lgknz339nzh";
|
||||
};
|
||||
dependencies = [
|
||||
"diff-lcs"
|
||||
"rspec-support"
|
||||
];
|
||||
};
|
||||
"rspec-mocks" = {
|
||||
version = "3.1.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0gxk5w3klia4zsnp0svxck43xxwwfdqvhr3srv6p30f3m5q6rmzr";
|
||||
};
|
||||
dependencies = [
|
||||
"rspec-support"
|
||||
];
|
||||
};
|
||||
"rspec-rails" = {
|
||||
version = "3.1.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1b1in3n1dc1bpf9wb3p3b2ynq05iacmr48jxzc73lj4g44ksh3wq";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"activesupport"
|
||||
"railties"
|
||||
"rspec-core"
|
||||
"rspec-expectations"
|
||||
"rspec-mocks"
|
||||
"rspec-support"
|
||||
];
|
||||
};
|
||||
"rspec-support" = {
|
||||
version = "3.1.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "14y6v9r9lrh91ry9r79h85v0f3y9ja25w42nv5z9n0bipfcwhprb";
|
||||
};
|
||||
};
|
||||
"safe_yaml" = {
|
||||
version = "1.0.4";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
|
||||
};
|
||||
};
|
||||
"sawyer" = {
|
||||
version = "0.5.4";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "01kl4zpf0gaacnkra5nikrzfpwj8f10hsvgyzm7z2s1mz4iipx2v";
|
||||
};
|
||||
dependencies = [
|
||||
"addressable"
|
||||
"faraday"
|
||||
];
|
||||
};
|
||||
"shoulda-matchers" = {
|
||||
version = "2.6.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1p3jhvd4dsj6d7nbmvnqhqhpmb8pnr05pi7jv9ajwqcys8140mc1";
|
||||
};
|
||||
dependencies = [
|
||||
"activesupport"
|
||||
];
|
||||
};
|
||||
"simplecov" = {
|
||||
version = "0.9.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "06hylxlalaxxldpbaqa54gc52wxdff0fixdvjyzr6i4ygxwzr7yf";
|
||||
};
|
||||
dependencies = [
|
||||
"docile"
|
||||
"multi_json"
|
||||
"simplecov-html"
|
||||
];
|
||||
};
|
||||
"simplecov-html" = {
|
||||
version = "0.8.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0jhn3jql73x7hsr00wwv984iyrcg0xhf64s90zaqv2f26blkqfb9";
|
||||
};
|
||||
};
|
||||
"sprockets" = {
|
||||
version = "2.12.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1bn2drr8bc2af359dkfraq0nm0p1pib634kvhwn5lvj3r4vllnn2";
|
||||
};
|
||||
dependencies = [
|
||||
"hike"
|
||||
"multi_json"
|
||||
"rack"
|
||||
"tilt"
|
||||
];
|
||||
};
|
||||
"sprockets-rails" = {
|
||||
version = "2.2.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "042fxqskvaa0wn9kpy02nv6p7sa355py9pi58zw96l30170sd3hl";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"activesupport"
|
||||
"sprockets"
|
||||
];
|
||||
};
|
||||
"sqlite3" = {
|
||||
version = "1.3.9";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "07m6a6flmyyi0rkg0j7x1a9861zngwjnximfh95cli2zzd57914r";
|
||||
};
|
||||
};
|
||||
"term-ansicolor" = {
|
||||
version = "1.3.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1a2gw7gmpmx57sdpyhjwl0zn4bqp7jyjz7aslpvvphd075layp4b";
|
||||
};
|
||||
dependencies = [
|
||||
"tins"
|
||||
];
|
||||
};
|
||||
"thor" = {
|
||||
version = "0.19.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
|
||||
};
|
||||
};
|
||||
"thread_safe" = {
|
||||
version = "0.3.4";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1cil2zcdzqkyr8zrwhlg7gywryg36j4mxlxw0h0x0j0wjym5nc8n";
|
||||
};
|
||||
};
|
||||
"tilt" = {
|
||||
version = "1.4.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir";
|
||||
};
|
||||
};
|
||||
"tins" = {
|
||||
version = "1.3.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1yxa5kyp9mw4w866wlg7c32ingzqxnzh3ir9yf06pwpkmq3mrbdi";
|
||||
};
|
||||
};
|
||||
"tzinfo" = {
|
||||
version = "1.2.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
|
||||
};
|
||||
dependencies = [
|
||||
"thread_safe"
|
||||
];
|
||||
};
|
||||
"webmock" = {
|
||||
version = "1.20.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0bl5v0xzcj24lx7xpsnywv3liqnqb5lfxysmmfb2fgi0n8586i6m";
|
||||
};
|
||||
dependencies = [
|
||||
"addressable"
|
||||
"crack"
|
||||
];
|
||||
};
|
||||
}
|
760
pkgs/applications/networking/cluster/panamax/gemset-ui.nix
Normal file
760
pkgs/applications/networking/cluster/panamax/gemset-ui.nix
Normal file
|
@ -0,0 +1,760 @@
|
|||
let
|
||||
pkgs = import <nixpkgs> { };
|
||||
in {
|
||||
"actionmailer" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0qjv5akjbpgd4cx518k522mssvc3y3nki65hi6fj5nbzi7a6rwq5";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"actionview"
|
||||
"mail"
|
||||
];
|
||||
};
|
||||
"actionpack" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "07y1ny00h69xklq260smyl5md052f617gqrzkyw5sxafs5z25zax";
|
||||
};
|
||||
dependencies = [
|
||||
"actionview"
|
||||
"activesupport"
|
||||
"rack"
|
||||
"rack-test"
|
||||
];
|
||||
};
|
||||
"actionview" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "06sp37gfpn2jn7j6vlpp1y6vfi5kig60vyvixrjhyz0g4vgm13ax";
|
||||
};
|
||||
dependencies = [
|
||||
"activesupport"
|
||||
"builder"
|
||||
"erubis"
|
||||
];
|
||||
};
|
||||
"activemodel" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0rlqzz25l7vsphgkilg80kmk20d9h357awi27ax6zzb9klkqh0jr";
|
||||
};
|
||||
dependencies = [
|
||||
"activesupport"
|
||||
"builder"
|
||||
];
|
||||
};
|
||||
"activerecord" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0j4r0m32mjbwmz9gs8brln35jzr1cn7h585ggj0w0f1ai4hjsby5";
|
||||
};
|
||||
dependencies = [
|
||||
"activemodel"
|
||||
"activesupport"
|
||||
"arel"
|
||||
];
|
||||
};
|
||||
"activeresource" = {
|
||||
version = "4.0.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0fc5igjijyjzsl9q5kybkdzhc92zv8wsv0ifb0y90i632jx6d4jq";
|
||||
};
|
||||
dependencies = [
|
||||
"activemodel"
|
||||
"activesupport"
|
||||
"rails-observers"
|
||||
];
|
||||
};
|
||||
"activesupport" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "13i3mz66d5kp5y39gjwmcfqv0wb6mxm5k1nnz40wvd38dsf7n3bs";
|
||||
};
|
||||
dependencies = [
|
||||
"i18n"
|
||||
"json"
|
||||
"minitest"
|
||||
"thread_safe"
|
||||
"tzinfo"
|
||||
];
|
||||
};
|
||||
"addressable" = {
|
||||
version = "2.3.6";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "137fj0whmn1kvaq8wjalp8x4qbblwzvg3g4bfx8d8lfi6f0w48p8";
|
||||
};
|
||||
};
|
||||
"arel" = {
|
||||
version = "5.0.1.20140414130214";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0dhnc20h1v8ml3nmkxq92rr7qxxpk6ixhwvwhgl2dbw9mmxz0hf9";
|
||||
};
|
||||
};
|
||||
"binding_of_caller" = {
|
||||
version = "0.7.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "15jg6dkaq2nzcd602d7ppqbdxw3aji961942w93crs6qw4n6h9yk";
|
||||
};
|
||||
dependencies = [
|
||||
"debug_inspector"
|
||||
];
|
||||
};
|
||||
"builder" = {
|
||||
version = "3.2.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2";
|
||||
};
|
||||
};
|
||||
"byebug" = {
|
||||
version = "3.5.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0ldc2r0b316rrn2fgdgiznskj9gb0q9n60243laq7nqw9na8wdan";
|
||||
};
|
||||
dependencies = [
|
||||
"columnize"
|
||||
"debugger-linecache"
|
||||
"slop"
|
||||
];
|
||||
};
|
||||
"capybara" = {
|
||||
version = "2.3.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "12x24zsn3y7sigmz45ijd9bkq7l14r2a00ay6k9mdgrbncbr3ins";
|
||||
};
|
||||
dependencies = [
|
||||
"mime-types"
|
||||
"nokogiri"
|
||||
"rack"
|
||||
"rack-test"
|
||||
"xpath"
|
||||
];
|
||||
};
|
||||
"coderay" = {
|
||||
version = "1.1.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "059wkzlap2jlkhg460pkwc1ay4v4clsmg1bp4vfzjzkgwdckr52s";
|
||||
};
|
||||
};
|
||||
"columnize" = {
|
||||
version = "0.8.9";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1f3azq8pvdaaclljanwhab78hdw40k908ma2cwk59qzj4hvf7mip";
|
||||
};
|
||||
};
|
||||
"coveralls" = {
|
||||
version = "0.7.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0sz30d7b83qqsj3i0fr691w05d62wj7x3afh0ryjkqkis3fq94j4";
|
||||
};
|
||||
dependencies = [
|
||||
"multi_json"
|
||||
"rest-client"
|
||||
"simplecov"
|
||||
"term-ansicolor"
|
||||
"thor"
|
||||
];
|
||||
};
|
||||
"crack" = {
|
||||
version = "0.4.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1il94m92sz32nw5i6hdq14f1a2c3s9hza9zn6l95fvqhabq38k7a";
|
||||
};
|
||||
dependencies = [
|
||||
"safe_yaml"
|
||||
];
|
||||
};
|
||||
"ctl_base_ui" = {
|
||||
version = "0.0.4";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0h0dbl0mf6cql7yp10jywv22rn0iy2188phdxvr2ladwwn2vxf5d";
|
||||
};
|
||||
dependencies = [
|
||||
"haml"
|
||||
"jquery-rails"
|
||||
"jquery-ui-rails"
|
||||
"rails"
|
||||
"sass"
|
||||
];
|
||||
};
|
||||
"debug_inspector" = {
|
||||
version = "0.0.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "109761g00dbrw5q0dfnbqg8blfm699z4jj70l4zrgf9mzn7ii50m";
|
||||
};
|
||||
};
|
||||
"debugger-linecache" = {
|
||||
version = "1.2.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0iwyx190fd5vfwj1gzr8pg3m374kqqix4g4fc4qw29sp54d3fpdz";
|
||||
};
|
||||
};
|
||||
"diff-lcs" = {
|
||||
version = "1.2.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1vf9civd41bnqi6brr5d9jifdw73j9khc6fkhfl1f8r9cpkdvlx1";
|
||||
};
|
||||
};
|
||||
"docile" = {
|
||||
version = "1.1.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
|
||||
};
|
||||
};
|
||||
"dotenv" = {
|
||||
version = "0.11.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "09z0y0d6bks7i0sqvd8szfqj9i1kkj01anzly7shi83b3gxhrq9m";
|
||||
};
|
||||
dependencies = [
|
||||
"dotenv-deployment"
|
||||
];
|
||||
};
|
||||
"dotenv-deployment" = {
|
||||
version = "0.0.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ad66jq9a09qq1js8wsyil97018s7y6x0vzji0dy34gh65sbjz8c";
|
||||
};
|
||||
};
|
||||
"dotenv-rails" = {
|
||||
version = "0.11.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0r6hif0i1lipbi7mkxx7wa5clsn65n6wyd9jry262cx396lsfrqy";
|
||||
};
|
||||
dependencies = [
|
||||
"dotenv"
|
||||
];
|
||||
};
|
||||
"erubis" = {
|
||||
version = "2.7.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
|
||||
};
|
||||
};
|
||||
"execjs" = {
|
||||
version = "2.2.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1s41g9qwq0h4452q4gp934lnkzfkxh4wrg8fd4bcynba86bf3j8b";
|
||||
};
|
||||
};
|
||||
"haml" = {
|
||||
version = "4.0.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1xmzb0k5q271090crzmv7dbw8ss4289bzxklrc0fhw6pw3kcvc85";
|
||||
};
|
||||
dependencies = [
|
||||
"tilt"
|
||||
];
|
||||
};
|
||||
"hike" = {
|
||||
version = "1.2.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0i6c9hrszzg3gn2j41v3ijnwcm8cc2931fnjiv6mnpl4jcjjykhm";
|
||||
};
|
||||
};
|
||||
"i18n" = {
|
||||
version = "0.6.11";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0fwjlgmgry2blf8zlxn9c555cf4a16p287l599kz5104ncjxlzdk";
|
||||
};
|
||||
};
|
||||
"jquery-rails" = {
|
||||
version = "3.1.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0h5a565i3l2mbd221m6mz9d1nr53pz19i9qxv08qr1dv0yx2pr3y";
|
||||
};
|
||||
dependencies = [
|
||||
"railties"
|
||||
"thor"
|
||||
];
|
||||
};
|
||||
"jquery-ui-rails" = {
|
||||
version = "4.2.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1garrnqwh35acj2pp4sp6fpm2g881h23y644lzbic2qmcrq9wd2v";
|
||||
};
|
||||
dependencies = [
|
||||
"railties"
|
||||
];
|
||||
};
|
||||
"json" = {
|
||||
version = "1.8.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0002bsycvizvkmk1jyv8px1hskk6wrjfk4f7x5byi8gxm6zzn6wn";
|
||||
};
|
||||
};
|
||||
"kramdown" = {
|
||||
version = "1.4.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "001vy0ymiwbvkdbb9wpqmswv6imliv7xim00gq6rlk0chnbiaq80";
|
||||
};
|
||||
};
|
||||
"libv8" = {
|
||||
version = "3.16.14.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0dv5q5n5nf6b8h3fybwmsr3vkj70w4g1jpf6661j3hsv9vp0g4qq";
|
||||
};
|
||||
};
|
||||
"mail" = {
|
||||
version = "2.6.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1nbg60h3cpnys45h7zydxwrl200p7ksvmrbxnwwbpaaf9vnf3znp";
|
||||
};
|
||||
dependencies = [
|
||||
"mime-types"
|
||||
];
|
||||
};
|
||||
"method_source" = {
|
||||
version = "0.8.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2";
|
||||
};
|
||||
};
|
||||
"mime-types" = {
|
||||
version = "2.4.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "16nissnb31wj7kpcaynx4gr67i7pbkzccfg8k7xmplbkla4rmwiq";
|
||||
};
|
||||
};
|
||||
"mini_portile" = {
|
||||
version = "0.6.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "09kcn4g63xrdirgwxgjikqg976rr723bkc9bxfr29pk22cj3wavn";
|
||||
};
|
||||
};
|
||||
"minitest" = {
|
||||
version = "5.4.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ws2cphg9jh45nrvs43s2ww5r14nb026bwlbwwpi0jz6qsqm86x4";
|
||||
};
|
||||
};
|
||||
"multi_json" = {
|
||||
version = "1.10.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
|
||||
};
|
||||
};
|
||||
"nokogiri" = {
|
||||
version = "1.6.2.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0dj8ajm9hlfpa71qz1xn5prqy5qdi32ll74qh8ssjwknp1a35cnz";
|
||||
};
|
||||
dependencies = [
|
||||
"mini_portile"
|
||||
];
|
||||
};
|
||||
"phantomjs" = {
|
||||
version = "1.9.7.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "14as0yzwbzvshbp1f8igjxcdxc5vbjgh0jhdvy393il084inlrl7";
|
||||
};
|
||||
};
|
||||
"pry" = {
|
||||
version = "0.10.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1j0r5fm0wvdwzbh6d6apnp7c0n150hpm9zxpm5xvcgfqr36jaj8z";
|
||||
};
|
||||
dependencies = [
|
||||
"coderay"
|
||||
"method_source"
|
||||
"slop"
|
||||
];
|
||||
};
|
||||
"pry-byebug" = {
|
||||
version = "2.0.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "17b6720ci9345wkzj369ydyj6hdlg2krd26zivpd4dvaijszzgzq";
|
||||
};
|
||||
dependencies = [
|
||||
"byebug"
|
||||
"pry"
|
||||
];
|
||||
};
|
||||
"pry-stack_explorer" = {
|
||||
version = "0.4.9.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1828jqcfdr9nk86n15ky199vf33cfz51wkpv6kx230g0dsh9r85z";
|
||||
};
|
||||
dependencies = [
|
||||
"binding_of_caller"
|
||||
"pry"
|
||||
];
|
||||
};
|
||||
"puma" = {
|
||||
version = "2.8.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1l57fmf8vyxfjv7ab5znq0k339cym5ghnm5xxfvd1simjp73db0k";
|
||||
};
|
||||
dependencies = [
|
||||
"rack"
|
||||
];
|
||||
buildInputs = [ pkgs.openssl ];
|
||||
};
|
||||
"rack" = {
|
||||
version = "1.5.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
|
||||
};
|
||||
};
|
||||
"rack-protection" = {
|
||||
version = "1.5.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
|
||||
};
|
||||
dependencies = [
|
||||
"rack"
|
||||
];
|
||||
};
|
||||
"rack-test" = {
|
||||
version = "0.6.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "01mk715ab5qnqf6va8k3hjsvsmplrfqpz6g58qw4m3l8mim0p4ky";
|
||||
};
|
||||
dependencies = [
|
||||
"rack"
|
||||
];
|
||||
};
|
||||
"rails" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "059mpljplmhfz8rr4hk40q67fllcpsy809m4mwwbkm8qwif2z5r0";
|
||||
};
|
||||
dependencies = [
|
||||
"actionmailer"
|
||||
"actionpack"
|
||||
"actionview"
|
||||
"activemodel"
|
||||
"activerecord"
|
||||
"activesupport"
|
||||
"railties"
|
||||
"sprockets-rails"
|
||||
];
|
||||
};
|
||||
"rails-observers" = {
|
||||
version = "0.1.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1lsw19jzmvipvrfy2z04hi7r29dvkfc43h43vs67x6lsj9rxwwcy";
|
||||
};
|
||||
dependencies = [
|
||||
"activemodel"
|
||||
];
|
||||
};
|
||||
"railties" = {
|
||||
version = "4.1.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1n08h0rgj0aq5lvslnih6lvqz9wadpz6nnb25i4qhp37fhhyz9yz";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"activesupport"
|
||||
"rake"
|
||||
"thor"
|
||||
];
|
||||
};
|
||||
"rake" = {
|
||||
version = "10.4.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1446zzdpwpvwkd0zk19b2smmmvdiarh4b26cdbcw4fy5p67wxkw2";
|
||||
};
|
||||
};
|
||||
"ref" = {
|
||||
version = "1.0.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "19qgpsfszwc2sfh6wixgky5agn831qq8ap854i1jqqhy1zsci3la";
|
||||
};
|
||||
};
|
||||
"rest-client" = {
|
||||
version = "1.6.7";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0nn7zalgidz2yj0iqh3xvzh626krm2al79dfiij19jdhp0rk8853";
|
||||
};
|
||||
dependencies = [
|
||||
"mime-types"
|
||||
];
|
||||
};
|
||||
"rspec-core" = {
|
||||
version = "2.14.8";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0psjy5kdlz3ph39br0m01w65i1ikagnqlg39f8p65jh5q7dz8hwc";
|
||||
};
|
||||
};
|
||||
"rspec-expectations" = {
|
||||
version = "2.14.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1ni8kw8kjv76jvwjzi4jba00k3qzj9f8wd94vm6inz0jz3gwjqf9";
|
||||
};
|
||||
dependencies = [
|
||||
"diff-lcs"
|
||||
];
|
||||
};
|
||||
"rspec-mocks" = {
|
||||
version = "2.14.6";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1fwsmijd6w6cmqyh4ky2nq89jrpzh56hzmndx9wgkmdgfhfakv30";
|
||||
};
|
||||
};
|
||||
"rspec-rails" = {
|
||||
version = "2.14.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1j9nbha6p12kwy9c5g3lw541xg20yzk95lzgmsq7kvngiqz88p57";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"activemodel"
|
||||
"activesupport"
|
||||
"railties"
|
||||
"rspec-core"
|
||||
"rspec-expectations"
|
||||
"rspec-mocks"
|
||||
];
|
||||
};
|
||||
"safe_yaml" = {
|
||||
version = "1.0.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "063bykyk40s3rhy1dxfbvl69s179n1iny418z4wqjbvhrmjn18wl";
|
||||
};
|
||||
};
|
||||
"sass" = {
|
||||
version = "3.3.9";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0k19vj73283i907z4wfkc9qdska2b19z7ps6lcr5s4qzwis1zkmz";
|
||||
};
|
||||
};
|
||||
"simplecov" = {
|
||||
version = "0.9.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "06hylxlalaxxldpbaqa54gc52wxdff0fixdvjyzr6i4ygxwzr7yf";
|
||||
};
|
||||
dependencies = [
|
||||
"docile"
|
||||
"multi_json"
|
||||
"simplecov-html"
|
||||
];
|
||||
};
|
||||
"simplecov-html" = {
|
||||
version = "0.8.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0jhn3jql73x7hsr00wwv984iyrcg0xhf64s90zaqv2f26blkqfb9";
|
||||
};
|
||||
};
|
||||
"sinatra" = {
|
||||
version = "1.4.5";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0qyna3wzlnvsz69d21lxcm3ixq7db08mi08l0a88011qi4qq701s";
|
||||
};
|
||||
dependencies = [
|
||||
"rack"
|
||||
"rack-protection"
|
||||
"tilt"
|
||||
];
|
||||
};
|
||||
"slop" = {
|
||||
version = "3.6.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n";
|
||||
};
|
||||
};
|
||||
"sprockets" = {
|
||||
version = "2.12.3";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1bn2drr8bc2af359dkfraq0nm0p1pib634kvhwn5lvj3r4vllnn2";
|
||||
};
|
||||
dependencies = [
|
||||
"hike"
|
||||
"multi_json"
|
||||
"rack"
|
||||
"tilt"
|
||||
];
|
||||
};
|
||||
"sprockets-rails" = {
|
||||
version = "2.2.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "192d4vfl1gjz6phli6sqk98364x6v4jkpl5imajvimsinvgyv81b";
|
||||
};
|
||||
dependencies = [
|
||||
"actionpack"
|
||||
"activesupport"
|
||||
"sprockets"
|
||||
];
|
||||
};
|
||||
"teaspoon" = {
|
||||
version = "0.8.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1j3brbm9cv5km9d9wzb6q2b3cvc6m254z48h7h77z1w6c5wr0p3z";
|
||||
};
|
||||
dependencies = [
|
||||
"railties"
|
||||
];
|
||||
};
|
||||
"term-ansicolor" = {
|
||||
version = "1.3.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1a2gw7gmpmx57sdpyhjwl0zn4bqp7jyjz7aslpvvphd075layp4b";
|
||||
};
|
||||
dependencies = [
|
||||
"tins"
|
||||
];
|
||||
};
|
||||
"therubyracer" = {
|
||||
version = "0.12.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "106fqimqyaalh7p6czbl5m2j69z8gv7cm10mjb8bbb2p2vlmqmi6";
|
||||
};
|
||||
dependencies = [
|
||||
"libv8"
|
||||
"ref"
|
||||
];
|
||||
};
|
||||
"thor" = {
|
||||
version = "0.19.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "08p5gx18yrbnwc6xc0mxvsfaxzgy2y9i78xq7ds0qmdm67q39y4z";
|
||||
};
|
||||
};
|
||||
"thread_safe" = {
|
||||
version = "0.3.4";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1cil2zcdzqkyr8zrwhlg7gywryg36j4mxlxw0h0x0j0wjym5nc8n";
|
||||
};
|
||||
};
|
||||
"tilt" = {
|
||||
version = "1.4.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir";
|
||||
};
|
||||
};
|
||||
"tins" = {
|
||||
version = "1.1.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "0jddc40lw8lzn421p6pjvvs7b37qyd8jgsl5nrq16rc46wgx2r2r";
|
||||
};
|
||||
};
|
||||
"tzinfo" = {
|
||||
version = "1.2.2";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx";
|
||||
};
|
||||
dependencies = [
|
||||
"thread_safe"
|
||||
];
|
||||
};
|
||||
"uglifier" = {
|
||||
version = "2.5.1";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1vihq309mzv9a2i0s8v4imrn1g2kj8z0vr88q3i5b657c4kxzfp0";
|
||||
};
|
||||
dependencies = [
|
||||
"execjs"
|
||||
"json"
|
||||
];
|
||||
};
|
||||
"webmock" = {
|
||||
version = "1.18.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "1r21a4x7dljb3cqxp7w7mdq5a1xvw9kn6m3gldsldsfza5b4hq03";
|
||||
};
|
||||
dependencies = [
|
||||
"addressable"
|
||||
"crack"
|
||||
];
|
||||
};
|
||||
"xpath" = {
|
||||
version = "2.0.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "04kcr127l34p7221z13blyl0dvh0bmxwx326j72idayri36a394w";
|
||||
};
|
||||
dependencies = [
|
||||
"nokogiri"
|
||||
];
|
||||
};
|
||||
"zeroclipboard-rails" = {
|
||||
version = "0.1.0";
|
||||
source = {
|
||||
type = "gem";
|
||||
sha256 = "00ixal0a0mxaqsyzp06c6zz4qdwqydy1qv4n7hbyqfhbmsdalcfc";
|
||||
};
|
||||
dependencies = [
|
||||
"railties"
|
||||
];
|
||||
};
|
||||
}
|
71
pkgs/applications/networking/cluster/panamax/ui.nix
Normal file
71
pkgs/applications/networking/cluster/panamax/ui.nix
Normal file
|
@ -0,0 +1,71 @@
|
|||
{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler_HEAD
|
||||
, ruby, rubygemsFun, openssl, sqlite, dataDir ? "/var/lib/panamax-ui"}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
let
|
||||
env = bundlerEnv {
|
||||
name = "panamax-api-gems";
|
||||
inherit ruby;
|
||||
gemset = ./gemset-ui.nix;
|
||||
gemfile = ./Gemfile-ui;
|
||||
lockfile = ./Gemfile-ui.lock;
|
||||
};
|
||||
bundler = bundler_HEAD.override { inherit ruby; };
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "panamax-ui-${version}";
|
||||
version = "0.2.11";
|
||||
|
||||
src = fetchgit {
|
||||
rev = "refs/tags/v${version}";
|
||||
url = "git://github.com/CenturyLinkLabs/panamax-ui";
|
||||
sha256 = "17j5ac8fzp377bzg7f239jdcc9j0c63bkx0ill5nl10i3h05z7jh";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper env.ruby openssl sqlite bundler ];
|
||||
|
||||
setSourceRoot = ''
|
||||
mkdir -p $out/share
|
||||
cp -R panamax-ui $out/share/panamax-ui
|
||||
export sourceRoot="$out/share/panamax-ui"
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Journal|NixOS Journal|g' -i "{}" \;
|
||||
find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Local|NixOS Local|g' -i "{}" \;
|
||||
find . -type f -iname "*.haml" -exec sed -e 's|CoreOS Host|NixOS Host|g' -i "{}" \;
|
||||
sed -e 's|CoreOS Local|NixOS Local|g' -i "spec/features/manage_application_spec.rb"
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
export HOME=$PWD
|
||||
export GEM_HOME=${env}/${env.ruby.gemPath}
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
rm -f ./bin/*
|
||||
bundle exec rake rails:update:bin
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
rm -rf log tmp db
|
||||
ln -sf ${dataDir}/{db,state/log,state/tmp} .
|
||||
|
||||
mkdir -p $out/bin
|
||||
makeWrapper bin/bundle "$out/bin/bundle" \
|
||||
--run "cd $out/share/panamax-ui" \
|
||||
--prefix "PATH" : "$out/share/panamax-ui/bin:${env.ruby}/bin:$PATH" \
|
||||
--prefix "HOME" : "$out/share/panamax-ui" \
|
||||
--prefix "GEM_HOME" : "${env}/${env.ruby.gemPath}" \
|
||||
--prefix "GEM_PATH" : "$out/share/panamax-ui:${bundler}/${env.ruby.gemPath}"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/CenturyLinkLabs/panamax-ui;
|
||||
description = "The Web GUI for Panamax";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ matejc offline ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
|
@ -10789,6 +10789,13 @@ let
|
|||
namecoin = callPackage ../applications/misc/namecoin { };
|
||||
namecoinqt = callPackage ../applications/misc/namecoin/qt.nix { };
|
||||
|
||||
panamax_api = callPackage ../applications/networking/cluster/panamax/api.nix {
|
||||
ruby = ruby_2_1;
|
||||
};
|
||||
panamax_ui = callPackage ../applications/networking/cluster/panamax/ui.nix {
|
||||
ruby = ruby_2_1;
|
||||
};
|
||||
|
||||
pcmanfm = callPackage ../applications/misc/pcmanfm { };
|
||||
|
||||
shotcut = callPackage ../applications/video/shotcut { mlt = mlt-qt5; };
|
||||
|
|
Loading…
Reference in a new issue