Merge pull request #39991 from xeji/remove-fleet

fleet, panamax: remove
This commit is contained in:
Jaka Hudoklin 2018-05-05 08:07:14 +02:00 committed by GitHub
commit 3ec4528dcf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 3 additions and 2399 deletions

View File

@ -190,7 +190,7 @@
cadvisor = 167;
nylon = 168;
apache-kafka = 169;
panamax = 170;
#panamax = 170; # unused
exim = 172;
#fleet = 173; # unused
#input = 174; # unused
@ -474,9 +474,9 @@
#chronos = 164; # unused
gitlab = 165;
nylon = 168;
panamax = 170;
#panamax = 170; # unused
exim = 172;
fleet = 173;
#fleet = 173; # unused
input = 174;
sddm = 175;
tss = 176;

View File

@ -171,11 +171,9 @@
./services/backup/rsnapshot.nix
./services/backup/tarsnap.nix
./services/backup/znapzend.nix
./services/cluster/fleet.nix
./services/cluster/kubernetes/default.nix
./services/cluster/kubernetes/dns.nix
./services/cluster/kubernetes/dashboard.nix
./services/cluster/panamax.nix
./services/computing/boinc/client.nix
./services/computing/torque/server.nix
./services/computing/torque/mom.nix

View File

@ -1,150 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.fleet;
in {
##### Interface
options.services.fleet = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable fleet service.
'';
};
listen = mkOption {
type = types.listOf types.str;
default = [ "/var/run/fleet.sock" ];
example = [ "/var/run/fleet.sock" "127.0.0.1:49153" ];
description = ''
Fleet listening addresses.
'';
};
etcdServers = mkOption {
type = types.listOf types.str;
default = [ "http://127.0.0.1:2379" ];
description = ''
Fleet list of etcd endpoints to use.
'';
};
publicIp = mkOption {
type = types.nullOr types.str;
default = "";
description = ''
Fleet IP address that should be published with the local Machine's
state and any socket information. If not set, fleetd will attempt
to detect the IP it should publish based on the machine's IP
routing information.
'';
};
etcdCafile = mkOption {
type = types.nullOr types.path;
default = null;
description = ''
Fleet TLS ca file when SSL certificate authentication is enabled
in etcd endpoints.
'';
};
etcdKeyfile = mkOption {
type = types.nullOr types.path;
default = null;
description = ''
Fleet TLS key file when SSL certificate authentication is enabled
in etcd endpoints.
'';
};
etcdCertfile = mkOption {
type = types.nullOr types.path;
default = null;
description = ''
Fleet TLS cert file when SSL certificate authentication is enabled
in etcd endpoints.
'';
};
metadata = mkOption {
type = types.attrsOf types.str;
default = {};
apply = attrs: concatMapStringsSep "," (n: "${n}=${attrs."${n}"}") (attrNames attrs);
example = literalExample ''
{
region = "us-west";
az = "us-west-1";
}
'';
description = ''
Key/value pairs that are published with the local to the fleet registry.
This data can be used directly by a client of fleet to make scheduling decisions.
'';
};
extraConfig = mkOption {
type = types.attrsOf types.str;
apply = mapAttrs' (n: v: nameValuePair ("FLEET_" + n) v);
default = {};
example = literalExample ''
{
VERBOSITY = 1;
ETCD_REQUEST_TIMEOUT = "2.0";
AGENT_TTL = "40s";
}
'';
description = ''
Fleet extra config. See
<link xlink:href="https://github.com/coreos/fleet/blob/master/Documentation/deployment-and-configuration.md"/>
for configuration options.
'';
};
};
##### Implementation
config = mkIf cfg.enable {
systemd.services.fleet = {
description = "Fleet Init System Daemon";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" "fleet.socket" "etcd.service" "docker.service" ];
requires = [ "fleet.socket" ];
environment = {
FLEET_ETCD_SERVERS = concatStringsSep "," cfg.etcdServers;
FLEET_PUBLIC_IP = cfg.publicIp;
FLEET_ETCD_CAFILE = cfg.etcdCafile;
FLEET_ETCD_KEYFILE = cfg.etcdKeyfile;
FLEET_ETCD_CERTFILE = cfg.etcdCertfile;
FLEET_METADATA = cfg.metadata;
} // cfg.extraConfig;
serviceConfig = {
ExecStart = "${pkgs.fleet}/bin/fleetd";
Group = "fleet";
};
};
systemd.sockets.fleet = {
description = "Fleet Socket for the API";
wantedBy = [ "sockets.target" ];
listenStreams = cfg.listen;
socketConfig = {
ListenStream = "/var/run/fleet.sock";
SocketMode = "0660";
SocketUser = "root";
SocketGroup = "fleet";
};
};
services.etcd.enable = mkDefault true;
virtualisation.docker.enable = mkDefault true;
environment.systemPackages = [ pkgs.fleet ];
users.extraGroups.fleet.gid = config.ids.gids.fleet;
};
}

View File

@ -1,156 +0,0 @@
{ 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:2379";
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 = ''
mkdir -p ${cfg.dataDir}/ui/state/{log,tmp}
chown -R panamax:panamax ${cfg.dataDir}
'';
serviceConfig = {
ExecStart = "${panamax_ui}/bin/bundle exec rails server --binding 127.0.0.1 --port ${toString cfg.UIPort}";
User = "panamax";
Group = "panamax";
PermissionsStartOnly = true;
};
};
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;
services.cadvisor.enable = mkDefault true;
services.cadvisor.port = mkDefault 3002;
virtualisation.docker.enable = mkDefault true;
environment.systemPackages = [ panamax_api panamax_ui ];
users.extraGroups.panamax.gid = config.ids.gids.panamax;
};
}

View File

@ -284,7 +284,6 @@ in rec {
tests.ferm = callTest tests/ferm.nix {};
tests.firefox = callTest tests/firefox.nix {};
tests.firewall = callTest tests/firewall.nix {};
tests.fleet = callTestOnMatchingSystems ["x86_64-linux"] tests/fleet.nix {};
tests.fwupd = callTest tests/fwupd.nix {};
#tests.gitlab = callTest tests/gitlab.nix {};
tests.gitolite = callTest tests/gitolite.nix {};
@ -360,7 +359,6 @@ in rec {
tests.openldap = callTest tests/openldap.nix {};
tests.owncloud = callTest tests/owncloud.nix {};
tests.pam-oath-login = callTest tests/pam-oath-login.nix {};
#tests.panamax = callTestOnMatchingSystems ["x86_64-linux"] tests/panamax.nix {};
tests.peerflix = callTest tests/peerflix.nix {};
tests.php-pcre = callTest tests/php-pcre.nix {};
tests.postgresql = callSubTests tests/postgresql.nix {};

View File

@ -1,76 +0,0 @@
import ./make-test.nix ({ pkgs, ...} : rec {
name = "simple";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ offline ];
};
nodes = {
node1 =
{ config, pkgs, ... }:
{
services = {
etcd = {
enable = true;
listenPeerUrls = ["http://0.0.0.0:7001"];
initialAdvertisePeerUrls = ["http://node1:7001"];
initialCluster = ["node1=http://node1:7001" "node2=http://node2:7001"];
};
};
services.fleet = {
enable = true;
metadata.name = "node1";
};
networking.firewall.allowedTCPPorts = [ 7001 ];
};
node2 =
{ config, pkgs, ... }:
{
services = {
etcd = {
enable = true;
listenPeerUrls = ["http://0.0.0.0:7001"];
initialAdvertisePeerUrls = ["http://node2:7001"];
initialCluster = ["node1=http://node1:7001" "node2=http://node2:7001"];
};
};
services.fleet = {
enable = true;
metadata.name = "node2";
};
networking.firewall.allowedTCPPorts = [ 7001 ];
};
};
service = builtins.toFile "hello.service" ''
[Unit]
Description=Hello World
[Service]
ExecStart=/bin/sh -c "while true; do echo \"Hello, world\"; /var/run/current-system/sw/bin/sleep 1; done"
[X-Fleet]
MachineMetadata=name=node2
'';
testScript =
''
startAll;
$node1->waitForUnit("fleet.service");
$node2->waitForUnit("fleet.service");
$node2->waitUntilSucceeds("fleetctl list-machines | grep node1");
$node1->waitUntilSucceeds("fleetctl list-machines | grep node2");
$node1->succeed("cp ${service} hello.service && fleetctl submit hello.service");
$node1->succeed("fleetctl list-unit-files | grep hello");
$node1->succeed("fleetctl start hello.service");
$node1->waitUntilSucceeds("fleetctl list-units | grep running");
$node1->succeed("fleetctl stop hello.service");
$node1->succeed("fleetctl destroy hello.service");
'';
})

View File

@ -1,21 +0,0 @@
import ./make-test.nix ({ pkgs, ...} : {
name = "panamax";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ offline ];
};
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;
'';
})

View File

@ -1,23 +0,0 @@
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

View File

@ -1,164 +0,0 @@
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.7.0)
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.5.1)
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.3)
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.4)
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)

View File

@ -1,74 +0,0 @@
{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler
, ruby, libxslt, libxml2, sqlite, openssl, docker
, dataDir ? "/var/lib/panamax-api" }@args:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "panamax-api-${version}";
version = "0.2.16";
env = bundlerEnv {
name = "panamax-api-gems-${version}";
inherit ruby;
gemdir = ./.;
};
bundler = args.bundler.override { inherit ruby; };
database_yml = builtins.toFile "database.yml" ''
production:
adapter: sqlite3
database: <%= ENV["PANAMAX_DATABASE_PATH"] || "${dataDir}/db/mnt/db.sqlite3" %>
timeout: 5000
'';
src = fetchgit {
rev = "refs/tags/v${version}";
url = "git://github.com/CenturyLinkLabs/panamax-api";
sha256 = "0dqg0fbmy5cgjh0ql8yqlybhjyyrslgghjrc24wjhd1rghjn2qi6";
};
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 "GEM_PATH" : "$out/share/panamax-api:${bundler}/${env.ruby.gemPath}"
'';
meta = with stdenv.lib; {
broken = true; # needs ruby 2.1
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;
};
}

View File

@ -1,568 +0,0 @@
{
"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.7.0";
source = {
type = "gem";
sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758";
};
};
"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.5.1";
source = {
type = "gem";
sha256 = "1h8jn0rgmwy37jnhfcg55iilw0n370vgp8xnh0g5laa8rhv32fyn";
};
};
"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"
];
};
"rack" = {
version = "1.5.2";
source = {
type = "gem";
sha256 = "19szfw76cscrzjldvw30jp3461zl00w4xvw1x9lsmyp86h1g0jp6";
};
};
"rack-test" = {
version = "0.6.3";
source = {
type = "gem";
sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
};
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.4";
source = {
type = "gem";
sha256 = "172cdg38cqsfgvrncjzj0kziz7kv6b1lx8pccd0blyphs25qf4gc";
};
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"
];
};
}

View File

@ -1,31 +0,0 @@
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'
gem 'its'
gem 'capybara'
gem 'teaspoon'
gem 'phantomjs'
gem 'dotenv-rails', '0.11.1'
gem 'pry'
gem 'pry-byebug'
gem 'pry-stack_explorer'
end
group :test do
gem 'webmock'
gem 'sinatra', '1.4.5'
gem 'coveralls', '0.7.0'
end

View File

@ -1,226 +0,0 @@
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.4.4)
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.5)
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.2)
haml (4.0.5)
tilt
hike (1.2.3)
i18n (0.7.0)
its (0.2.0)
rspec-core
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.2)
kramdown (1.4.0)
libv8 (3.16.14.11)
mail (2.6.3)
mime-types (>= 1.16, < 3)
method_source (0.8.2)
mime-types (2.4.3)
mini_portile (0.6.1)
minitest (5.5.1)
multi_json (1.10.1)
netrc (0.8.0)
nokogiri (1.6.5)
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.3)
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.0)
ref (1.0.5)
rest-client (1.7.2)
mime-types (>= 1.16, < 3.0)
netrc (~> 0.7)
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)
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.4)
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.3.3)
tzinfo (1.2.2)
thread_safe (~> 0.1)
uglifier (2.5.1)
execjs (>= 0.3.0)
json (>= 1.8.0)
webmock (1.20.4)
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
coveralls (= 0.7.0)
ctl_base_ui
dotenv-rails (= 0.11.1)
haml (= 4.0.5)
its
kramdown (= 1.4.0)
phantomjs
pry
pry-byebug
pry-stack_explorer
puma (= 2.8.2)
rails (= 4.1.7)
rspec-rails
sass (= 3.3.9)
sinatra (= 1.4.5)
teaspoon
therubyracer (= 0.12.1)
uglifier (= 2.5.1)
webmock
zeroclipboard-rails

View File

@ -1,72 +0,0 @@
{ stdenv, fetchgit, fetchurl, makeWrapper, bundlerEnv, bundler
, ruby, openssl, sqlite, dataDir ? "/var/lib/panamax-ui"}@args:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "panamax-ui-${version}";
version = "0.2.14";
env = bundlerEnv {
name = "panamax-ui-gems-${version}";
inherit ruby;
gemdir = ./.;
};
bundler = args.bundler.override { inherit ruby; };
src = fetchgit {
rev = "refs/tags/v${version}";
url = "git://github.com/CenturyLinkLabs/panamax-ui";
sha256 = "01k0h0rjqp5arvwxm2xpfxjsag5qw0qqlg7hx4v8f6jsyc4wmjfl";
};
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"
# fix libv8 dependency
substituteInPlace Gemfile.lock --replace "3.16.14.7" "3.16.14.11"
'';
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; {
broken = true; # needs ruby 2.1
homepage = https://github.com/CenturyLinkLabs/panamax-ui;
description = "The Web GUI for Panamax";
license = licenses.asl20;
maintainers = with maintainers; [ matejc offline ];
platforms = platforms.linux;
};
}

View File

@ -1,789 +0,0 @@
{
"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.4.4";
source = {
type = "gem";
sha256 = "114k4xi4nfbp3jfbxgwa3fksbwsyibx74gbdqpcgg3dxpmzkaa4f";
};
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.5";
source = {
type = "gem";
sha256 = "1pji85xmddgld5lqx52zxi5r2kx6rsjwkqlr26bp62xb29r10x57";
};
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.2";
source = {
type = "gem";
sha256 = "05m41mnxn4b2p133qzbz5cy9cc5rn57aa0pp2943hxmzbk379z1f";
};
};
"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.7.0";
source = {
type = "gem";
sha256 = "1i5z1ykl8zhszsxcs8mzl8d0dxgs3ylz8qlzrw74jb0gplkx6758";
};
};
"its" = {
version = "0.2.0";
source = {
type = "gem";
sha256 = "0rxwds9ipqp48mzqcaxzmfcqhawazg0zlhc1avv3i2cmm3np1z8g";
};
dependencies = [
"rspec-core"
];
};
"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.2";
source = {
type = "gem";
sha256 = "0zzvv25vjikavd3b1bp6lvbgj23vv9jvmnl4vpim8pv30z8p6vr5";
};
};
"kramdown" = {
version = "1.4.0";
source = {
type = "gem";
sha256 = "001vy0ymiwbvkdbb9wpqmswv6imliv7xim00gq6rlk0chnbiaq80";
};
};
libv8 = {
version = "3.16.14.11";
source = {
type = "gem";
sha256 = "000vbiy78wk5r1f6p7qncab8ldg7qw5pjz7bchn3lw700gpaacxp";
};
};
"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.1";
source = {
type = "gem";
sha256 = "07gah4k84sar9d850v9gip9b323pw74vwwndh3bbzxpw5iiwsd3l";
};
};
"minitest" = {
version = "5.5.1";
source = {
type = "gem";
sha256 = "1h8jn0rgmwy37jnhfcg55iilw0n370vgp8xnh0g5laa8rhv32fyn";
};
};
"multi_json" = {
version = "1.10.1";
source = {
type = "gem";
sha256 = "1ll21dz01jjiplr846n1c8yzb45kj5hcixgb72rz0zg8fyc9g61c";
};
};
"netrc" = {
version = "0.8.0";
source = {
type = "gem";
sha256 = "1j4jbdvd19kq34xiqx1yqb4wmcywyrlaky8hrh09c1hz3c0v5dkb";
};
};
"nokogiri" = {
version = "1.6.5";
source = {
type = "gem";
sha256 = "1xmxz6fa0m4p7c7ngpgz6gjgv65lzz63dsf0b6vh7gs2fkiw8j7l";
};
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"
];
};
"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.3";
source = {
type = "gem";
sha256 = "0h6x5jq24makgv2fq5qqgjlrk74dxfy62jif9blk43llw8ib2q7z";
};
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.0";
source = {
type = "gem";
sha256 = "0a10xzqc1lh6gjkajkslr0n40wjrniyiyzxkp9m5fc8wf7b74zw8";
};
};
"ref" = {
version = "1.0.5";
source = {
type = "gem";
sha256 = "19qgpsfszwc2sfh6wixgky5agn831qq8ap854i1jqqhy1zsci3la";
};
};
"rest-client" = {
version = "1.7.2";
source = {
type = "gem";
sha256 = "0h8c0prfi2v5p8iim3wm60xc4yripc13nqwq601bfl85k4gf25i0";
};
dependencies = [
"mime-types"
"netrc"
];
};
"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";
};
};
"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.4";
source = {
type = "gem";
sha256 = "172cdg38cqsfgvrncjzj0kziz7kv6b1lx8pccd0blyphs25qf4gc";
};
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.3.3";
source = {
type = "gem";
sha256 = "14jnsg15wakdk1ljh2iv9yvzk8nb7gpzd2zw4yvjikmffqjyqvna";
};
};
"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.20.4";
source = {
type = "gem";
sha256 = "01cz13ybxbbvkpl21bcfv0p9ir8m2zcplx93ps01ma54p25z4mxr";
};
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"
];
};
}

View File

@ -1,37 +0,0 @@
{ stdenv, lib, go, fetchFromGitHub }:
stdenv.mkDerivation rec {
name = "fleet-${version}";
version = "1.0.0";
src = fetchFromGitHub {
owner = "coreos";
repo = "fleet";
rev = "v${version}";
sha256 = "0j48ajz19aqfzv9iyznnn39aw51y1nqcl270grmvi5cbqycmrfm0";
};
buildInputs = [ go ];
buildPhase = ''
patchShebangs build
./build
'';
installPhase = ''
mkdir -p $out
mv bin $out
'';
meta = with stdenv.lib; {
description = "A distributed init system";
homepage = https://coreos.com/using-coreos/clustering/;
license = licenses.asl20;
maintainers = with maintainers; [
cstrahan
jgeerds
offline
];
platforms = platforms.unix;
};
}

View File

@ -12431,8 +12431,6 @@ with pkgs;
firebird = callPackage ../servers/firebird { icu = null; stdenv = overrideCC stdenv gcc5; };
firebirdSuper = callPackage ../servers/firebird { icu = icu58; superServer = true; stdenv = overrideCC stdenv gcc5; };
fleet = callPackage ../servers/fleet { };
foswiki = callPackage ../servers/foswiki { };
frab = callPackage ../servers/web-apps/frab { };
@ -17033,9 +17031,6 @@ with pkgs;
p4v = libsForQt5.callPackage ../applications/version-management/p4v { };
panamax_api = callPackage ../applications/networking/cluster/panamax/api { };
panamax_ui = callPackage ../applications/networking/cluster/panamax/ui { };
partio = callPackage ../development/libraries/partio {};
pcmanfm = callPackage ../applications/misc/pcmanfm { };