forked from mirrors/nixpkgs
Merge pull request #70216 from talyz/gitlab_12_3_2
gitlab: 12.1.6 -> 12.3.5, bundler: 1.17.2 -> 1.17.3
This commit is contained in:
commit
eadeca9ea7
|
@ -1,32 +1,13 @@
|
|||
{
|
||||
"ce": {
|
||||
"version": "12.1.6",
|
||||
"repo_hash": "0zyqxzyb1m8qa94iiyqf5ivqxrg60y378r94fsixy17fbh4y7sa6",
|
||||
"deb_hash": "14bwcmwar44pjnjr6fdn2h9y92vyfva0kb76d4pz8pqc9pfm2hmg",
|
||||
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_12.1.6-ce.0_amd64.deb/download.deb",
|
||||
"owner": "gitlab-org",
|
||||
"repo": "gitlab-ce",
|
||||
"rev": "v12.1.6",
|
||||
"passthru": {
|
||||
"GITALY_SERVER_VERSION": "1.53.2",
|
||||
"GITLAB_PAGES_VERSION": "1.7.1",
|
||||
"GITLAB_SHELL_VERSION": "9.3.0",
|
||||
"GITLAB_WORKHORSE_VERSION": "8.7.0"
|
||||
}
|
||||
},
|
||||
"ee": {
|
||||
"version": "12.1.6",
|
||||
"repo_hash": "1lxci1hwcccgw567c5733yl95xsxr4gnw41m48igdw9y8p6g7zbc",
|
||||
"deb_hash": "0yjilhf4bjhl1a596x6n4cvjklfbrwhymslhx977nfjazfb5slx3",
|
||||
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_12.1.6-ee.0_amd64.deb/download.deb",
|
||||
"owner": "gitlab-org",
|
||||
"repo": "gitlab-ee",
|
||||
"rev": "v12.1.6-ee",
|
||||
"passthru": {
|
||||
"GITALY_SERVER_VERSION": "1.53.2",
|
||||
"GITLAB_PAGES_VERSION": "1.7.1",
|
||||
"GITLAB_SHELL_VERSION": "9.3.0",
|
||||
"GITLAB_WORKHORSE_VERSION": "8.7.0"
|
||||
}
|
||||
"version": "12.3.5",
|
||||
"repo_hash": "12ywspgnbwm232vmzbqhkqmwmcrb9pvihsayzmw0cxvhlfwq6995",
|
||||
"owner": "gitlab-org",
|
||||
"repo": "gitlab",
|
||||
"rev": "v12.3.5-ee",
|
||||
"passthru": {
|
||||
"GITALY_SERVER_VERSION": "1.65.1",
|
||||
"GITLAB_PAGES_VERSION": "1.9.0",
|
||||
"GITLAB_SHELL_VERSION": "10.0.0",
|
||||
"GITLAB_WORKHORSE_VERSION": "8.10.0"
|
||||
}
|
||||
}
|
|
@ -1,13 +1,24 @@
|
|||
{ stdenv, lib, fetchurl, fetchFromGitLab, bundlerEnv
|
||||
, ruby, tzdata, git, nettools, nixosTests
|
||||
, gitlabEnterprise ? false
|
||||
, ruby, tzdata, git, nettools, nixosTests, nodejs
|
||||
, gitlabEnterprise ? false, callPackage, yarn
|
||||
, yarn2nix-moretea
|
||||
}:
|
||||
|
||||
let
|
||||
data = (builtins.fromJSON (builtins.readFile ./data.json));
|
||||
|
||||
version = data.version;
|
||||
src = fetchFromGitLab {
|
||||
owner = data.owner;
|
||||
repo = data.repo;
|
||||
rev = data.rev;
|
||||
sha256 = data.repo_hash;
|
||||
};
|
||||
|
||||
rubyEnv = bundlerEnv rec {
|
||||
name = "gitlab-env-${version}";
|
||||
inherit ruby;
|
||||
gemdir = ./rubyEnv- + (if gitlabEnterprise then "ee" else "ce");
|
||||
gemdir = ./rubyEnv;
|
||||
gemset =
|
||||
let x = import (gemdir + "/gemset.nix");
|
||||
in x // {
|
||||
|
@ -19,35 +30,71 @@ let
|
|||
};
|
||||
};
|
||||
groups = [
|
||||
"default" "unicorn" "ed25519" "metrics" "development" "puma" "test"
|
||||
"default" "unicorn" "ed25519" "metrics" "development" "puma" "test" "kerberos"
|
||||
];
|
||||
# N.B. omniauth_oauth2_generic and apollo_upload_server both provide a
|
||||
# `console` executable.
|
||||
ignoreCollisions = true;
|
||||
};
|
||||
|
||||
flavour = if gitlabEnterprise then "ee" else "ce";
|
||||
data = (builtins.fromJSON (builtins.readFile ./data.json)).${flavour};
|
||||
yarnOfflineCache = (callPackage ./yarnPkgs.nix {}).offline_cache;
|
||||
|
||||
version = data.version;
|
||||
sources = {
|
||||
gitlab = fetchFromGitLab {
|
||||
owner = data.owner;
|
||||
repo = data.repo;
|
||||
rev = data.rev;
|
||||
sha256 = data.repo_hash;
|
||||
};
|
||||
gitlabDeb = fetchurl {
|
||||
url = data.deb_url;
|
||||
sha256 = data.deb_hash;
|
||||
};
|
||||
assets = stdenv.mkDerivation {
|
||||
pname = "gitlab-assets";
|
||||
inherit version src;
|
||||
|
||||
nativeBuildInputs = [ rubyEnv.wrappedRuby rubyEnv.bundler nodejs yarn ];
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
||||
# Some rake tasks try to run yarn automatically, which won't work
|
||||
rm lib/tasks/yarn.rake
|
||||
|
||||
# The rake tasks won't run without a basic configuration in place
|
||||
mv config/database.yml.env config/database.yml
|
||||
mv config/gitlab.yml.example config/gitlab.yml
|
||||
|
||||
# Yarn and bundler wants a real home directory to write cache, config, etc to
|
||||
export HOME=$NIX_BUILD_TOP/fake_home
|
||||
|
||||
# Make yarn install packages from our offline cache, not the registry
|
||||
yarn config --offline set yarn-offline-mirror ${yarnOfflineCache}
|
||||
|
||||
# Fixup "resolved"-entries in yarn.lock to match our offline cache
|
||||
${yarn2nix-moretea.fixup_yarn_lock}/bin/fixup_yarn_lock yarn.lock
|
||||
|
||||
yarn install --offline --frozen-lockfile --ignore-scripts --no-progress --non-interactive
|
||||
|
||||
patchShebangs node_modules/
|
||||
|
||||
runHook postConfigure
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
bundle exec rake gettext:po_to_json RAILS_ENV=production NODE_ENV=production
|
||||
bundle exec rake rake:assets:precompile RAILS_ENV=production NODE_ENV=production
|
||||
bundle exec rake webpack:compile RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=4096"
|
||||
bundle exec rake gitlab:assets:fix_urls RAILS_ENV=production NODE_ENV=production
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mv public/assets $out
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "gitlab${if gitlabEnterprise then "-ee" else ""}-${version}";
|
||||
name = "gitlab${lib.optionalString gitlabEnterprise "-ee"}-${version}";
|
||||
|
||||
src = sources.gitlab;
|
||||
inherit src;
|
||||
|
||||
buildInputs = [
|
||||
rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler tzdata git nettools
|
||||
|
@ -56,10 +103,15 @@ stdenv.mkDerivation {
|
|||
patches = [ ./remove-hardcoded-locations.patch ];
|
||||
|
||||
postPatch = ''
|
||||
${lib.optionalString (!gitlabEnterprise) ''
|
||||
# Remove all proprietary components
|
||||
rm -rf ee
|
||||
''}
|
||||
|
||||
# For reasons I don't understand "bundle exec" ignores the
|
||||
# RAILS_ENV causing tests to be executed that fail because we're
|
||||
# not installing development and test gems above. Deleting the
|
||||
# tests works though.:
|
||||
# tests works though.
|
||||
rm lib/tasks/test.rake
|
||||
|
||||
rm config/initializers/gitlab_shell_secret_token.rb
|
||||
|
@ -69,27 +121,15 @@ stdenv.mkDerivation {
|
|||
'';
|
||||
|
||||
buildPhase = ''
|
||||
mv config/gitlab.yml.example config/gitlab.yml
|
||||
|
||||
# Building this requires yarn, node &c, so we just get it from the deb
|
||||
ar p ${sources.gitlabDeb} data.tar.gz | gunzip > gitlab-deb-data.tar
|
||||
# Work around unpacking deb containing binary with suid bit
|
||||
tar -f gitlab-deb-data.tar --delete ./opt/gitlab/embedded/bin/ksu
|
||||
tar -xf gitlab-deb-data.tar
|
||||
rm gitlab-deb-data.tar
|
||||
|
||||
mv -v opt/gitlab/embedded/service/gitlab-rails/public/assets public
|
||||
rm -rf opt # only directory in data.tar.gz
|
||||
|
||||
mv config/gitlab.yml config/gitlab.yml.example
|
||||
rm -f config/secrets.yml
|
||||
mv config config.dist
|
||||
rm -r tmp
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
rm -r tmp
|
||||
mkdir -p $out/share
|
||||
cp -r . $out/share/gitlab
|
||||
ln -sf ${assets} $out/share/gitlab/public/assets
|
||||
rm -rf $out/share/gitlab/log
|
||||
ln -sf /run/gitlab/log $out/share/gitlab/log
|
||||
ln -sf /run/gitlab/uploads $out/share/gitlab/public/uploads
|
||||
|
@ -102,7 +142,7 @@ stdenv.mkDerivation {
|
|||
'';
|
||||
|
||||
passthru = {
|
||||
inherit rubyEnv;
|
||||
inherit rubyEnv assets;
|
||||
ruby = rubyEnv.wrappedRuby;
|
||||
GITALY_SERVER_VERSION = data.passthru.GITALY_SERVER_VERSION;
|
||||
GITLAB_PAGES_VERSION = data.passthru.GITLAB_PAGES_VERSION;
|
||||
|
@ -116,7 +156,7 @@ stdenv.mkDerivation {
|
|||
meta = with lib; {
|
||||
homepage = http://www.gitlab.com/;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ fpletz globin krav ];
|
||||
maintainers = with maintainers; [ fpletz globin krav talyz ];
|
||||
} // (if gitlabEnterprise then
|
||||
{
|
||||
license = licenses.unfreeRedistributable; # https://gitlab.com/gitlab-org/gitlab-ee/raw/master/LICENSE
|
||||
|
|
|
@ -6,8 +6,7 @@ gem 'bundler', '>= 1.17.3'
|
|||
gem 'rugged', '~> 0.28'
|
||||
gem 'github-linguist', '~> 6.1', require: 'linguist'
|
||||
gem 'gitlab-markup', '~> 1.7.0'
|
||||
gem 'activesupport', '~> 5.1.7'
|
||||
gem 'gitaly-proto', '~> 1.36.0'
|
||||
gem 'activesupport', '~> 5.2.3'
|
||||
gem 'rdoc', '~> 4.2'
|
||||
gem 'gitlab-gollum-lib', '~> 4.2.7.7', require: false
|
||||
gem 'gitlab-gollum-rugged_adapter', '~> 0.4.4.2', require: false
|
||||
|
@ -17,7 +16,7 @@ gem 'faraday', '~> 0.12'
|
|||
gem 'rbtrace', require: false
|
||||
|
||||
# Labkit provides observability functionality
|
||||
gem 'gitlab-labkit', '~> 0.3.0'
|
||||
gem 'gitlab-labkit', '~> 0.5.0'
|
||||
|
||||
# Detects the open source license the repository includes
|
||||
# This version needs to be in sync with GitLab CE/EE
|
||||
|
|
|
@ -2,20 +2,20 @@ GEM
|
|||
remote: https://rubygems.org/
|
||||
specs:
|
||||
abstract_type (0.0.7)
|
||||
actionpack (5.1.7)
|
||||
actionview (= 5.1.7)
|
||||
activesupport (= 5.1.7)
|
||||
actionpack (5.2.3)
|
||||
actionview (= 5.2.3)
|
||||
activesupport (= 5.2.3)
|
||||
rack (~> 2.0)
|
||||
rack-test (>= 0.6.3)
|
||||
rails-dom-testing (~> 2.0)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
||||
actionview (5.1.7)
|
||||
activesupport (= 5.1.7)
|
||||
actionview (5.2.3)
|
||||
activesupport (= 5.2.3)
|
||||
builder (~> 3.1)
|
||||
erubi (~> 1.4)
|
||||
rails-dom-testing (~> 2.0)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
||||
activesupport (5.1.7)
|
||||
activesupport (5.2.3)
|
||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||
i18n (>= 0.7, < 2)
|
||||
minitest (~> 5.1)
|
||||
|
@ -46,11 +46,9 @@ GEM
|
|||
activesupport (>= 4.2.0)
|
||||
faraday (0.15.4)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
ffi (1.10.0)
|
||||
ffi (1.11.1)
|
||||
gemojione (3.3.0)
|
||||
json
|
||||
gitaly-proto (1.36.0)
|
||||
grpc (~> 1.0)
|
||||
github-linguist (6.4.1)
|
||||
charlock_holmes (~> 0.7.6)
|
||||
escape_utils (~> 1.2.0)
|
||||
|
@ -73,12 +71,13 @@ GEM
|
|||
diff-lcs (~> 1.1)
|
||||
mime-types (>= 1.16)
|
||||
posix-spawn (~> 0.3)
|
||||
gitlab-labkit (0.3.0)
|
||||
gitlab-labkit (0.5.2)
|
||||
actionpack (~> 5)
|
||||
activesupport (~> 5)
|
||||
grpc (~> 1.19.0)
|
||||
grpc (~> 1.19)
|
||||
jaeger-client (~> 0.10)
|
||||
opentracing (~> 0.4)
|
||||
redis (> 3.0.0, < 5.0.0)
|
||||
gitlab-markup (1.7.0)
|
||||
gollum-grit_adapter (1.0.1)
|
||||
gitlab-grit (~> 2.7, >= 2.7.1)
|
||||
|
@ -111,10 +110,10 @@ GEM
|
|||
mime-types-data (3.2019.0331)
|
||||
mini_portile2 (2.4.0)
|
||||
minitest (5.11.3)
|
||||
msgpack (1.2.10)
|
||||
msgpack (1.3.0)
|
||||
multi_json (1.13.1)
|
||||
multipart-post (2.0.0)
|
||||
nokogiri (1.10.3)
|
||||
nokogiri (1.10.4)
|
||||
mini_portile2 (~> 2.4.0)
|
||||
nokogumbo (1.5.0)
|
||||
nokogiri
|
||||
|
@ -139,7 +138,7 @@ GEM
|
|||
rails-dom-testing (2.0.3)
|
||||
activesupport (>= 4.2.0)
|
||||
nokogiri (>= 1.6)
|
||||
rails-html-sanitizer (1.0.4)
|
||||
rails-html-sanitizer (1.2.0)
|
||||
loofah (~> 2.2, >= 2.2.2)
|
||||
rainbow (3.0.0)
|
||||
rbtrace (0.4.11)
|
||||
|
@ -147,7 +146,8 @@ GEM
|
|||
msgpack (>= 0.4.3)
|
||||
optimist (>= 3.0.0)
|
||||
rdoc (4.3.0)
|
||||
rouge (3.5.1)
|
||||
redis (4.1.2)
|
||||
rouge (3.11.0)
|
||||
rspec (3.8.0)
|
||||
rspec-core (~> 3.8.0)
|
||||
rspec-expectations (~> 3.8.0)
|
||||
|
@ -175,7 +175,7 @@ GEM
|
|||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (>= 1.4.0, < 1.7)
|
||||
ruby-progressbar (1.10.0)
|
||||
rugged (0.28.1)
|
||||
rugged (0.28.3.1)
|
||||
safe_yaml (1.0.5)
|
||||
sanitize (4.6.6)
|
||||
crass (~> 1.0.2)
|
||||
|
@ -213,15 +213,14 @@ PLATFORMS
|
|||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
activesupport (~> 5.1.7)
|
||||
activesupport (~> 5.2.3)
|
||||
bundler (>= 1.17.3)
|
||||
factory_bot
|
||||
faraday (~> 0.12)
|
||||
gitaly-proto (~> 1.36.0)
|
||||
github-linguist (~> 6.1)
|
||||
gitlab-gollum-lib (~> 4.2.7.7)
|
||||
gitlab-gollum-rugged_adapter (~> 0.4.4.2)
|
||||
gitlab-labkit (~> 0.3.0)
|
||||
gitlab-labkit (~> 0.5.0)
|
||||
gitlab-markup (~> 1.7.0)
|
||||
google-protobuf (~> 3.7.1)
|
||||
grpc (~> 1.19.0)
|
||||
|
|
|
@ -17,14 +17,14 @@ let
|
|||
};
|
||||
};
|
||||
in buildGoPackage rec {
|
||||
version = "1.53.2";
|
||||
version = "1.65.1";
|
||||
pname = "gitaly";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitaly";
|
||||
rev = "v${version}";
|
||||
sha256 = "0x4dhqaxx6n5jlcvf69rglxiz11037ghgcnskks6qnlcbkd85j3d";
|
||||
sha256 = "1a39i723na2xk4363a7v48ba23vi04qpg0119dw09g13m0k5hjc3";
|
||||
};
|
||||
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitaly";
|
||||
|
@ -40,7 +40,7 @@ in buildGoPackage rec {
|
|||
|
||||
postInstall = ''
|
||||
mkdir -p $ruby
|
||||
cp -rv $src/ruby/{bin,lib,git-hooks,gitlab-shell} $ruby
|
||||
cp -rv $src/ruby/{bin,lib,proto,git-hooks,gitlab-shell} $ruby
|
||||
|
||||
# gitlab-shell will try to read its config relative to the source
|
||||
# code by default which doesn't work in nixos because it's a
|
||||
|
|
|
@ -270,6 +270,33 @@
|
|||
sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/pretty";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/pretty";
|
||||
rev = "v0.1.0";
|
||||
sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/pty";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/pty";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/text";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/text";
|
||||
rev = "v0.1.0";
|
||||
sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/libgit2/git2go";
|
||||
fetch = {
|
||||
|
@ -477,15 +504,6 @@
|
|||
sha256 = "113fwpn80ylx970w8h7nfqnhh18dpx1jadbk7rbr8k68q4di4y0q";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitaly-proto";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gitlab.com/gitlab-org/gitaly-proto.git";
|
||||
rev = "v1.36.0";
|
||||
sha256 = "0xma8ys3lf1bdhlkmcis31xs1h1dshcr5796wwfwnzijwk6422m3";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/labkit";
|
||||
fetch = {
|
||||
|
@ -509,8 +527,8 @@
|
|||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/crypto";
|
||||
rev = "c2843e01d9a2";
|
||||
sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
|
||||
rev = "20be4c3c3ed5";
|
||||
sha256 = "1ph7y8v30hc95h1dwr7vrhg1nzs47a261qin6zg8mhf12g5k2lxb";
|
||||
};
|
||||
}
|
||||
{
|
||||
|
@ -554,8 +572,8 @@
|
|||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/sys";
|
||||
rev = "d0b11bdaac8a";
|
||||
sha256 = "18yfsmw622l7gc5sqriv5qmck6903vvhivpzp8i3xfy3z33dybdl";
|
||||
rev = "953cdadca894";
|
||||
sha256 = "0gkha4whk8xkcv3isigbs250akag99isxnd3v9xmy0kl3g88hxy1";
|
||||
};
|
||||
}
|
||||
{
|
||||
|
@ -626,8 +644,8 @@
|
|||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/check.v1";
|
||||
rev = "20d25e280405";
|
||||
sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
|
||||
rev = "788fd7840127";
|
||||
sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
|
||||
};
|
||||
}
|
||||
{
|
||||
|
|
|
@ -13,10 +13,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0zyi3dc50ii2msdkawaf11y4xw645ig57ha2jfnr8lpr8s1nlh52";
|
||||
sha256 = "1s2iay17i2k0xx36cmnpbrmr5w6x70jk7fq1d8w70xcdw5chm0w1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "5.1.7";
|
||||
version = "5.2.3";
|
||||
};
|
||||
actionview = {
|
||||
dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
|
||||
|
@ -24,10 +24,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0i2j580njb767yhf0k5ih3qqg38ybiah80ai8dsr6kjjw35aj747";
|
||||
sha256 = "1v49rgf8305grqf6gq7qa47qhamr369igyy0giycz60x86afyr4h";
|
||||
type = "gem";
|
||||
};
|
||||
version = "5.1.7";
|
||||
version = "5.2.3";
|
||||
};
|
||||
activesupport = {
|
||||
dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
|
||||
|
@ -35,10 +35,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0znhiy90hdlx66jqhaycin4qrphrymsw68c36a1an7g481zvfv91";
|
||||
sha256 = "110vp4frgkw3mpzlmshg2f2ig09cknls2w68ym1r1s39d01v0mi8";
|
||||
type = "gem";
|
||||
};
|
||||
version = "5.1.7";
|
||||
version = "5.2.3";
|
||||
};
|
||||
adamantium = {
|
||||
dependencies = ["ice_nine" "memoizable"];
|
||||
|
@ -205,12 +205,14 @@
|
|||
version = "0.15.4";
|
||||
};
|
||||
ffi = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p";
|
||||
sha256 = "06mvxpjply8qh4j3fj9wh08kdzwkbnvsiysh0vrhlk5cwxzjmblh";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.10.0";
|
||||
version = "1.11.1";
|
||||
};
|
||||
gemojione = {
|
||||
dependencies = ["json"];
|
||||
|
@ -221,17 +223,6 @@
|
|||
};
|
||||
version = "3.3.0";
|
||||
};
|
||||
gitaly-proto = {
|
||||
dependencies = ["grpc"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "11bkrf2z5ppp55cipawdpinrva42x12grp2gl1dp1jdb35crqick";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.36.0";
|
||||
};
|
||||
github-linguist = {
|
||||
dependencies = ["charlock_holmes" "escape_utils" "mime-types" "rugged"];
|
||||
groups = ["default"];
|
||||
|
@ -283,15 +274,15 @@
|
|||
version = "2.8.2";
|
||||
};
|
||||
gitlab-labkit = {
|
||||
dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing"];
|
||||
dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing" "redis"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0dvapmdc9axm9dq2gg89qrqb318rkrsabpyybrqvcx1ipbi5k3a1";
|
||||
sha256 = "1j06gl4ksd83rycg3fb46bb77iw74i1ivs5li6pyf5klrxjq8k3h";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.0";
|
||||
version = "0.5.2";
|
||||
};
|
||||
gitlab-markup = {
|
||||
groups = ["default"];
|
||||
|
@ -489,10 +480,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1w38hilm3dk42dwk8ygiq49bl4in7y80hfqr63hk54mj4gmzi6ch";
|
||||
sha256 = "1186lhwnxiw5ryv6dbxrsfy0fajfll2l95kf9pmca50iyiqi86zn";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.10";
|
||||
version = "1.3.0";
|
||||
};
|
||||
multi_json = {
|
||||
source = {
|
||||
|
@ -516,10 +507,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "02bjydih0j515szfv9mls195cvpyidh6ixm7dwbl3s2sbaxxk5s4";
|
||||
sha256 = "0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.10.3";
|
||||
version = "1.10.4";
|
||||
};
|
||||
nokogumbo = {
|
||||
dependencies = ["nokogiri"];
|
||||
|
@ -649,10 +640,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1gv7vr5d9g2xmgpjfq4nxsqr70r9pr042r9ycqqnfvw5cz9c7jwr";
|
||||
sha256 = "0ilwxzm3a7bql5c9q2n9g9nb1hax7vd8d65a5yp3d967ld97nvrq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.4";
|
||||
version = "1.2.0";
|
||||
};
|
||||
rainbow = {
|
||||
source = {
|
||||
|
@ -679,15 +670,25 @@
|
|||
};
|
||||
version = "4.3.0";
|
||||
};
|
||||
redis = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1mymdx7s5sr4mablklaipz679ckczsiigswm1g2v5mc93yj5amw3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.1.2";
|
||||
};
|
||||
rouge = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0yfhazlhjc4abgzhkgq8zqmdphvkh52211widkl4zhsbhqh8wg2q";
|
||||
sha256 = "1zsyv6abqrk7lpql5f1ja4m88bfy9qndi8xykpss6cpvjdmi3ydb";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.5.1";
|
||||
version = "3.11.0";
|
||||
};
|
||||
rspec = {
|
||||
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
|
||||
|
@ -778,10 +779,10 @@
|
|||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1yiszpz6y13vvgh3fss1l0ipp0zgsbbc8c28vynnpdyx1sy6krp6";
|
||||
sha256 = "03w3k7j27kgzpcc3halkd3w0b677sny2lfwm2lwn2n1ac20dzjc6";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.28.1";
|
||||
version = "0.28.3.1";
|
||||
};
|
||||
safe_yaml = {
|
||||
groups = ["default" "development" "test"];
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
source 'https://rubygems.org'
|
||||
|
||||
group :development, :test do
|
||||
gem 'listen', '~> 0.5.0'
|
||||
gem 'pry', '~> 0.12.2'
|
||||
gem 'rspec', '~> 3.8.0'
|
||||
gem 'rspec-parameterized', '~> 0.4.0'
|
||||
gem 'rubocop', '0.49.1', require: false
|
||||
gem 'simplecov', '~> 0.9.0', require: false
|
||||
gem 'vcr', '~> 4.0.0'
|
||||
gem 'webmock', '~> 3.4.0'
|
||||
end
|
|
@ -0,0 +1,109 @@
|
|||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
abstract_type (0.0.7)
|
||||
adamantium (0.2.0)
|
||||
ice_nine (~> 0.11.0)
|
||||
memoizable (~> 0.4.0)
|
||||
addressable (2.5.2)
|
||||
public_suffix (>= 2.0.2, < 4.0)
|
||||
ast (2.4.0)
|
||||
binding_of_caller (0.8.0)
|
||||
debug_inspector (>= 0.0.1)
|
||||
coderay (1.1.2)
|
||||
concord (0.1.5)
|
||||
adamantium (~> 0.2.0)
|
||||
equalizer (~> 0.0.9)
|
||||
crack (0.4.3)
|
||||
safe_yaml (~> 1.0.0)
|
||||
debug_inspector (0.0.3)
|
||||
diff-lcs (1.3)
|
||||
docile (1.1.5)
|
||||
equalizer (0.0.11)
|
||||
hashdiff (0.3.7)
|
||||
ice_nine (0.11.2)
|
||||
listen (0.5.3)
|
||||
memoizable (0.4.2)
|
||||
thread_safe (~> 0.3, >= 0.3.1)
|
||||
method_source (0.9.2)
|
||||
multi_json (1.13.1)
|
||||
parallel (1.12.1)
|
||||
parser (2.5.1.2)
|
||||
ast (~> 2.4.0)
|
||||
powerpack (0.1.2)
|
||||
proc_to_ast (0.1.0)
|
||||
coderay
|
||||
parser
|
||||
unparser
|
||||
procto (0.0.3)
|
||||
pry (0.12.2)
|
||||
coderay (~> 1.1.0)
|
||||
method_source (~> 0.9.0)
|
||||
public_suffix (3.0.3)
|
||||
rainbow (2.2.2)
|
||||
rake
|
||||
rake (12.3.3)
|
||||
rspec (3.8.0)
|
||||
rspec-core (~> 3.8.0)
|
||||
rspec-expectations (~> 3.8.0)
|
||||
rspec-mocks (~> 3.8.0)
|
||||
rspec-core (3.8.0)
|
||||
rspec-support (~> 3.8.0)
|
||||
rspec-expectations (3.8.1)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.8.0)
|
||||
rspec-mocks (3.8.0)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.8.0)
|
||||
rspec-parameterized (0.4.0)
|
||||
binding_of_caller
|
||||
parser
|
||||
proc_to_ast
|
||||
rspec (>= 2.13, < 4)
|
||||
unparser
|
||||
rspec-support (3.8.0)
|
||||
rubocop (0.49.1)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 2.3.3.1, < 3.0)
|
||||
powerpack (~> 0.1)
|
||||
rainbow (>= 1.99.1, < 3.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (~> 1.0, >= 1.0.1)
|
||||
ruby-progressbar (1.9.0)
|
||||
safe_yaml (1.0.4)
|
||||
simplecov (0.9.2)
|
||||
docile (~> 1.1.0)
|
||||
multi_json (~> 1.0)
|
||||
simplecov-html (~> 0.9.0)
|
||||
simplecov-html (0.9.0)
|
||||
thread_safe (0.3.6)
|
||||
unicode-display_width (1.4.0)
|
||||
unparser (0.2.8)
|
||||
abstract_type (~> 0.0.7)
|
||||
adamantium (~> 0.2.0)
|
||||
concord (~> 0.1.5)
|
||||
diff-lcs (~> 1.3)
|
||||
equalizer (~> 0.0.9)
|
||||
parser (>= 2.3.1.2, < 2.6)
|
||||
procto (~> 0.0.2)
|
||||
vcr (4.0.0)
|
||||
webmock (3.4.2)
|
||||
addressable (>= 2.3.6)
|
||||
crack (>= 0.3.2)
|
||||
hashdiff
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
listen (~> 0.5.0)
|
||||
pry (~> 0.12.2)
|
||||
rspec (~> 3.8.0)
|
||||
rspec-parameterized (~> 0.4.0)
|
||||
rubocop (= 0.49.1)
|
||||
simplecov (~> 0.9.0)
|
||||
vcr (~> 4.0.0)
|
||||
webmock (~> 3.4.0)
|
||||
|
||||
BUNDLED WITH
|
||||
1.16.3
|
|
@ -1,47 +1,72 @@
|
|||
{ stdenv, ruby, bundler, fetchFromGitLab, go }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "9.3.0";
|
||||
pname = "gitlab-shell";
|
||||
{ stdenv, ruby, bundler, fetchFromGitLab, buildGoPackage, bundlerEnv }:
|
||||
|
||||
let
|
||||
version = "10.0.0";
|
||||
src = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitlab-shell";
|
||||
rev = "v${version}";
|
||||
sha256 = "1r000h4sgplx7giqvqs5iy0zh3drf6qa1iiq0mxlk3h9fshs1348";
|
||||
sha256 = "0n1llkb0jrqxm10l9wqmqxjycydqphgz0chbbf395d8pywyz826x";
|
||||
};
|
||||
rubyEnv = bundlerEnv {
|
||||
name = "gitlab-shell-env";
|
||||
inherit ruby;
|
||||
gemdir = ./.;
|
||||
};
|
||||
goPackage = buildGoPackage {
|
||||
pname = "gitlab-shell-go";
|
||||
inherit src version;
|
||||
|
||||
buildInputs = [ ruby bundler go ];
|
||||
patches = [ ./remove-hardcoded-locations-go.patch ];
|
||||
|
||||
patches = [ ./remove-hardcoded-locations.patch ];
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitlab-shell";
|
||||
goDeps = ./deps.nix;
|
||||
|
||||
installPhase = ''
|
||||
export GOCACHE="$TMPDIR/go-cache"
|
||||
# gitlab-shell depends on an older version of gitaly which
|
||||
# contains old, vendored versions of some packages; gitlab-shell
|
||||
# also explicitly depends on newer versions of these libraries,
|
||||
# but buildGoPackage exposes the vendored versions instead,
|
||||
# leading to compilation errors. Since the vendored libraries
|
||||
# aren't used here anyway, we'll just remove them.
|
||||
postConfigure = ''
|
||||
rm -r "$NIX_BUILD_TOP/go/src/gitlab.com/gitlab-org/gitaly/vendor/"
|
||||
'';
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "gitlab-shell";
|
||||
inherit src version;
|
||||
|
||||
ruby bin/compile
|
||||
mkdir -p $out/
|
||||
cp -R . $out/
|
||||
|
||||
# Nothing to install ATM for non-development but keeping the
|
||||
# install command anyway in case that changes in the future:
|
||||
export HOME=$(pwd)
|
||||
bundle install -j4 --verbose --local --deployment --without development test
|
||||
'';
|
||||
patches = [ ./remove-hardcoded-locations-ruby.patch ];
|
||||
|
||||
# gitlab-shell will try to read its config relative to the source
|
||||
# code by default which doesn't work in nixos because it's a
|
||||
# read-only filesystem
|
||||
postPatch = ''
|
||||
substituteInPlace lib/gitlab_config.rb --replace \
|
||||
"File.join(ROOT_PATH, 'config.yml')" \
|
||||
"'/run/gitlab/shell-config.yml'"
|
||||
"File.join(ROOT_PATH, 'config.yml')" \
|
||||
"'/run/gitlab/shell-config.yml'"
|
||||
'';
|
||||
|
||||
buildInputs = [ rubyEnv.wrappedRuby ];
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/
|
||||
cp -R . $out/
|
||||
cp ${goPackage.bin}/bin/* $out/bin/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "SSH access and repository management app for GitLab";
|
||||
homepage = http://www.gitlab.com/;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fpletz globin ];
|
||||
maintainers = with maintainers; [ fpletz globin talyz ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
|
|
507
pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
generated
Normal file
507
pkgs/applications/version-management/gitlab/gitlab-shell/deps.nix
generated
Normal file
|
@ -0,0 +1,507 @@
|
|||
# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
|
||||
[
|
||||
{
|
||||
goPackagePath = "bou.ke/monkey";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/bouk/monkey";
|
||||
rev = "v1.0.1";
|
||||
sha256 = "050y07pwx5zk7fchp0lhf35w417sml7lxkkzly8f932fy25rydz5";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "cloud.google.com/go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://code.googlesource.com/gocloud";
|
||||
rev = "v0.26.0";
|
||||
sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/certifi/gocertifi";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/certifi/gocertifi";
|
||||
rev = "ee1a9a0726d2";
|
||||
sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/client9/misspell";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/client9/misspell";
|
||||
rev = "v0.3.4";
|
||||
sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/codahale/hdrhistogram";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/codahale/hdrhistogram";
|
||||
rev = "3a0bb77429bd";
|
||||
sha256 = "1zampgfjbxy192cbwdi7g86l1idxaam96d834wncnpfdwgh5kl57";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/davecgh/go-spew";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/davecgh/go-spew";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/fsnotify/fsnotify";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/fsnotify/fsnotify";
|
||||
rev = "v1.4.7";
|
||||
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/getsentry/raven-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/getsentry/raven-go";
|
||||
rev = "v0.1.0";
|
||||
sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/gogo/protobuf";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/gogo/protobuf";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "1525pq7r6h3s8dncvq8gxi893p2nq8dxpzvq0nfl5b4p6mq0v1c2";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/glog";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/glog";
|
||||
rev = "23def4e6c14b";
|
||||
sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/lint";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/lint";
|
||||
rev = "06c8688daad7";
|
||||
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/mock";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/mock";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0ap8wb6pdl6ccmdb43advjll2ly4sz26wsc3axw0hbrjrybybzgy";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/protobuf";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/protobuf";
|
||||
rev = "v1.2.0";
|
||||
sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/grpc-ecosystem/go-grpc-middleware";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/hpcloud/tail";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/hpcloud/tail";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kisielk/gotool";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kisielk/gotool";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/lightstep/lightstep-tracer-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/lightstep/lightstep-tracer-go";
|
||||
rev = "v0.15.6";
|
||||
sha256 = "10n5r66g44s6rnz5kf86s4a3p1g55kc1kxqhnk7bx7mlayndgpmb";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/mattn/go-shellwords";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/mattn/go-shellwords";
|
||||
rev = "2444a32a19f4";
|
||||
sha256 = "08zcgr1az1n8zaxzwdd205j86hczgyc52nxfnw5avpw7rrkf7v0d";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/onsi/ginkgo";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/onsi/ginkgo";
|
||||
rev = "v1.7.0";
|
||||
sha256 = "14wgpdrvpc35rdz3859bz53sc1g4vpr1fysy15wy3ff9gmqs14yg";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/onsi/gomega";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/onsi/gomega";
|
||||
rev = "v1.4.3";
|
||||
sha256 = "1c8rqg5i2hz3snmq7s41yar1zjnzilb0fyiyhkg83v97afcfx79v";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/opentracing/opentracing-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/opentracing/opentracing-go";
|
||||
rev = "v1.0.2";
|
||||
sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/otiai10/copy";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/otiai10/copy";
|
||||
rev = "v1.0.1";
|
||||
sha256 = "0xmy0kfcx48q10s040579pcjswfaxlwhv7a2z07z9r92fdrgw03k";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/otiai10/curr";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/otiai10/curr";
|
||||
rev = "f5a3d24e5776";
|
||||
sha256 = "01k33ifs9n0pnhwhbfb9ws3q5sa37fi7dhir5vjakpfzdin07y4w";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/otiai10/mint";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/otiai10/mint";
|
||||
rev = "v1.2.4";
|
||||
sha256 = "1mf7b8h3akxbpj1rf3nk0ccqk5idd6z2gh9gm31phr7ll4gykn2m";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/philhofer/fwd";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/philhofer/fwd";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "1pg84khadh79v42y8sjsdgfb54vw2kzv7hpapxkifgj0yvcp30g2";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/pkg/errors";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/pkg/errors";
|
||||
rev = "v0.8.0";
|
||||
sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/pmezard/go-difflib";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/pmezard/go-difflib";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/sirupsen/logrus";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/sirupsen/logrus";
|
||||
rev = "v1.0.5";
|
||||
sha256 = "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/stretchr/testify";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/stretchr/testify";
|
||||
rev = "v1.2.2";
|
||||
sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/tinylib/msgp";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/tinylib/msgp";
|
||||
rev = "v1.0.2";
|
||||
sha256 = "0pypfknghg1hcjjrqz3f1riaylk6hcxn9h0qyzynb74rp0qmlxjc";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/uber-go/atomic";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber-go/atomic";
|
||||
rev = "v1.3.2";
|
||||
sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/uber/jaeger-client-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber/jaeger-client-go";
|
||||
rev = "v2.15.0";
|
||||
sha256 = "0ki23m9zrf3vxp839fnp9ckr4m28y6mpad8g5s5lr5k8jkl0sfwj";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/uber/jaeger-lib";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber/jaeger-lib";
|
||||
rev = "v1.5.0";
|
||||
sha256 = "113fwpn80ylx970w8h7nfqnhh18dpx1jadbk7rbr8k68q4di4y0q";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitaly";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gitlab.com/gitlab-org/gitaly.git";
|
||||
rev = "v1.7.0";
|
||||
sha256 = "1hhiyw1ag22mgn6chp8lf29y2fgj90xyb7wjd6s30hayqja7knh1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitaly-proto";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gitlab.com/gitlab-org/gitaly-proto.git";
|
||||
rev = "v1.12.0";
|
||||
sha256 = "02aqw1q8n84v4f3rc0x7hsg0gkmbqkznp9cl6vrhjvsisv38v695";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/labkit";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gitlab.com/gitlab-org/labkit.git";
|
||||
rev = "0c3fc7cdd57c";
|
||||
sha256 = "0fpn37v7dhhdgd63v4mq9cna9wdzrsfams13qmjmps3xpdw2wr9i";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "go.uber.org/atomic";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber-go/atomic";
|
||||
rev = "v1.3.2";
|
||||
sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/crypto";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/crypto";
|
||||
rev = "182114d58262";
|
||||
sha256 = "0dhagsjpk3wn2f7w148v0h9i651jpk4c0mlsy5sihcnmqz8s764l";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/lint";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/lint";
|
||||
rev = "06c8688daad7";
|
||||
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/net";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/net";
|
||||
rev = "10aee1819953";
|
||||
sha256 = "1rd6y0fr2gqhx3bsy0ahnacqzbxijkx8wyfmamrb3wbzc01091rl";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/oauth2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/oauth2";
|
||||
rev = "d2e6202438be";
|
||||
sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/sync";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/sync";
|
||||
rev = "1d60e4601c6f";
|
||||
sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/sys";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/sys";
|
||||
rev = "70b957f3b65e";
|
||||
sha256 = "146jwkr39asigqbsnsigxpkpb4vydld4k9q34xvvw0bp10qzjxxw";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/text";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/text";
|
||||
rev = "v0.3.0";
|
||||
sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/tools";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/tools";
|
||||
rev = "6cd1fcedba52";
|
||||
sha256 = "00hl0vkmy8impsnmc2dmm55sdhia95k0kqcrjbdpynryn1lamn5d";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "google.golang.org/appengine";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/appengine";
|
||||
rev = "v1.1.0";
|
||||
sha256 = "1pz202zszg8f35dk5pfhwgcdi3r6dx1l4yk6x6ly7nb4j45zi96x";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "google.golang.org/genproto";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/google/go-genproto";
|
||||
rev = "bd91e49a0898";
|
||||
sha256 = "1f5q04h03q6fksbfkhz13ai5849rkkb8xrmmi7cxs4lzsi6ixkg8";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "google.golang.org/grpc";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/grpc/grpc-go";
|
||||
rev = "v1.16.0";
|
||||
sha256 = "0a9xl6c5j7lvsb4q6ry5p892rjm86p47d4f8xrf0r8lxblf79qbg";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/DataDog/dd-trace-go.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/DataDog/dd-trace-go.v1";
|
||||
rev = "v1.9.0";
|
||||
sha256 = "1zfbsmm8fbcwhd6j28q3ijyswn1d3dyhydx3ckqpkkp6qiam3c2j";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/airbrake/gobrake.v2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/airbrake/gobrake.v2";
|
||||
rev = "v2.0.9";
|
||||
sha256 = "1x06f7n7qlyzqgyz0sdfcidf3w4ldn6zs6qx2mhibggk2z4whcjw";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/check.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/check.v1";
|
||||
rev = "20d25e280405";
|
||||
sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/fsnotify.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/fsnotify.v1";
|
||||
rev = "v1.4.7";
|
||||
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/gemnasium/logrus-airbrake-hook.v2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/gemnasium/logrus-airbrake-hook.v2";
|
||||
rev = "v2.1.2";
|
||||
sha256 = "0sbg0dn6cysmf8f2bi209jwl4jnpiwp4rdghnxlzirw3c32ms5y5";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/tomb.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/tomb.v1";
|
||||
rev = "dd632973f1e7";
|
||||
sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/yaml.v2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/yaml.v2";
|
||||
rev = "v2.2.1";
|
||||
sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "honnef.co/go/tools";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/dominikh/go-tools";
|
||||
rev = "88497007e858";
|
||||
sha256 = "0rinkyx3r2bq45mgcasnn5jb07cwbv3p3s2wwcrzxsarsj6wa5lc";
|
||||
};
|
||||
}
|
||||
]
|
|
@ -0,0 +1,451 @@
|
|||
{
|
||||
abstract_type = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.7";
|
||||
};
|
||||
adamantium = {
|
||||
dependencies = ["ice_nine" "memoizable"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.0";
|
||||
};
|
||||
addressable = {
|
||||
dependencies = ["public_suffix"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.5.2";
|
||||
};
|
||||
ast = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.4.0";
|
||||
};
|
||||
binding_of_caller = {
|
||||
dependencies = ["debug_inspector"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "05syqlks7463zsy1jdfbbdravdhj9hpj5pv2m74blqpv8bq4vv5g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.8.0";
|
||||
};
|
||||
coderay = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.2";
|
||||
};
|
||||
concord = {
|
||||
dependencies = ["adamantium" "equalizer"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.1.5";
|
||||
};
|
||||
crack = {
|
||||
dependencies = ["safe_yaml"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0abb0fvgw00akyik1zxnq7yv391va148151qxdghnzngv66bl62k";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.3";
|
||||
};
|
||||
debug_inspector = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0vxr0xa1mfbkfcrn71n7c4f2dj7la5hvphn904vh20j3x4j5lrx0";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.3";
|
||||
};
|
||||
diff-lcs = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.3";
|
||||
};
|
||||
docile = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0m8j31whq7bm5ljgmsrlfkiqvacrw6iz9wq10r3gwrv5785y8gjx";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.5";
|
||||
};
|
||||
equalizer = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.11";
|
||||
};
|
||||
hashdiff = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0yj5l2rw8i8jc725hbcpc4wks0qlaaimr3dpaqamfjkjkxl0hjp9";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.7";
|
||||
};
|
||||
ice_nine = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.11.2";
|
||||
};
|
||||
listen = {
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0inlw7vix61170vjr87h9izhjm5dbby8rbfrf1iryiv7b3kyvkxl";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.3";
|
||||
};
|
||||
memoizable = {
|
||||
dependencies = ["thread_safe"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.2";
|
||||
};
|
||||
method_source = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.2";
|
||||
};
|
||||
multi_json = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.13.1";
|
||||
};
|
||||
parallel = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.12.1";
|
||||
};
|
||||
parser = {
|
||||
dependencies = ["ast"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1zp89zg7iypncszxsjp8kiccrpbdf728jl449g6cnfkz990fyb5k";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.5.1.2";
|
||||
};
|
||||
powerpack = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1r51d67wd467rpdfl6x43y84vwm8f5ql9l9m85ak1s2sp3nc5hyv";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.1.2";
|
||||
};
|
||||
proc_to_ast = {
|
||||
dependencies = ["coderay" "parser" "unparser"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "14c65w48bbzp5lh1cngqd1y25kqvfnq1iy49hlzshl12dsk3z9wj";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.1.0";
|
||||
};
|
||||
procto = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.3";
|
||||
};
|
||||
pry = {
|
||||
dependencies = ["coderay" "method_source"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "00rm71x0r1jdycwbs83lf9l6p494m99asakbvqxh8rz7zwnlzg69";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.12.2";
|
||||
};
|
||||
public_suffix = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.0.3";
|
||||
};
|
||||
rainbow = {
|
||||
dependencies = ["rake"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08w2ghc5nv0kcq5b257h7dwjzjz1pqcavajfdx2xjyxqsvh2y34w";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.2.2";
|
||||
};
|
||||
rake = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1cvaqarr1m84mhc006g3l1vw7sa5qpkcw0138lsxlf769zdllsgp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "12.3.3";
|
||||
};
|
||||
rspec = {
|
||||
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.8.0";
|
||||
};
|
||||
rspec-core = {
|
||||
dependencies = ["rspec-support"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1p1s5bnbqp3sxk67y0fh0x884jjym527r0vgmhbm81w7aq6b7l4p";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.8.0";
|
||||
};
|
||||
rspec-expectations = {
|
||||
dependencies = ["diff-lcs" "rspec-support"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0vfqqcjmhdq25jrc8rd7nx4n8xid7s1ynv65ph06bk2xafn3rgll";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.8.1";
|
||||
};
|
||||
rspec-mocks = {
|
||||
dependencies = ["diff-lcs" "rspec-support"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "06y508cjqycb4yfhxmb3nxn0v9xqf17qbd46l1dh4xhncinr4fyp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.8.0";
|
||||
};
|
||||
rspec-parameterized = {
|
||||
dependencies = ["binding_of_caller" "parser" "proc_to_ast" "rspec" "unparser"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0arynbr6cfjhccwc8gy2xf87nybdnncsnmfwknnh8s7d4mj730p0";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.0";
|
||||
};
|
||||
rspec-support = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0p3m7drixrlhvj2zpc38b11x145bvm311x6f33jjcxmvcm0wq609";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.8.0";
|
||||
};
|
||||
rubocop = {
|
||||
dependencies = ["parallel" "parser" "powerpack" "rainbow" "ruby-progressbar" "unicode-display_width"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1mqyylfzch0967w7nfnqza84sqhljijd9y4bnq8hcmrscch75cxw";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.49.1";
|
||||
};
|
||||
ruby-progressbar = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1igh1xivf5h5g3y5m9b4i4j2mhz2r43kngh4ww3q1r80ch21nbfk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.9.0";
|
||||
};
|
||||
safe_yaml = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.4";
|
||||
};
|
||||
simplecov = {
|
||||
dependencies = ["docile" "multi_json" "simplecov-html"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1a3wy9zlmfwl3f47cibnxyxrgfz16y6fmy0dj1vyidzyys4mvy12";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.2";
|
||||
};
|
||||
simplecov-html = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0jv9pmpaxihrcsgcf6mgl3qg7rhf9scl5l2k67d768w9cz63xgvc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9.0";
|
||||
};
|
||||
thread_safe = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.6";
|
||||
};
|
||||
unicode-display_width = {
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0040bsdpcmvp8w31lqi2s9s4p4h031zv52401qidmh25cgyh4a57";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.4.0";
|
||||
};
|
||||
unparser = {
|
||||
dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
|
||||
groups = ["default" "development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0rh1649846ac17av30x0b0v9l45v0x1j2y1i8m1a7xdd0v4sld0z";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.8";
|
||||
};
|
||||
vcr = {
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0qh7lkj9b0shph84dw1wsrlaprl0jn1i4339fpsfy99402290zrr";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.0.0";
|
||||
};
|
||||
webmock = {
|
||||
dependencies = ["addressable" "crack" "hashdiff"];
|
||||
groups = ["development" "test"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "03994dxs4xayvkxqp01dd1ivhg4xxx7z35f7cxw7y2mwj3xn24ib";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.4.2";
|
||||
};
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
diff --git a/go/internal/config/config.go b/go/internal/config/config.go
|
||||
index f951fe6..b422fe3 100644
|
||||
--- a/go/internal/config/config.go
|
||||
+++ b/go/internal/config/config.go
|
||||
@@ -3,7 +3,6 @@ package config
|
||||
import (
|
||||
"io/ioutil"
|
||||
"net/url"
|
||||
- "os"
|
||||
"path"
|
||||
"strings"
|
||||
|
||||
@@ -44,16 +43,13 @@ type Config struct {
|
||||
}
|
||||
|
||||
func New() (*Config, error) {
|
||||
- dir, err := os.Getwd()
|
||||
- if err != nil {
|
||||
- return nil, err
|
||||
- }
|
||||
+ dir := "/run/gitlab"
|
||||
|
||||
return NewFromDir(dir)
|
||||
}
|
||||
|
||||
func NewFromDir(dir string) (*Config, error) {
|
||||
- return newFromFile(path.Join(dir, configFile))
|
||||
+ return newFromFile("/run/gitlab/shell-config.yml")
|
||||
}
|
||||
|
||||
func (c *Config) FeatureEnabled(featureName string) bool {
|
||||
diff --git a/go/internal/command/fallback/fallback.go b/go/internal/command/fallback/fallback.go
|
||||
index 2cb76a8..f59ad5e 100644
|
||||
--- a/go/internal/command/fallback/fallback.go
|
||||
+++ b/go/internal/command/fallback/fallback.go
|
||||
@@ -53,5 +53,5 @@
|
||||
func (c *Command) fallbackProgram() string {
|
||||
fileName := fmt.Sprintf("%s-ruby", c.Executable.Name)
|
||||
|
||||
- return filepath.Join(c.RootDir, "bin", fileName)
|
||||
+ return filepath.Join("/run/current-system/sw/bin", fileName)
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
diff --git a/lib/gitlab_keys.rb b/lib/gitlab_keys.rb
|
||||
index 0600a18..c46f2d7 100644
|
||||
--- a/lib/gitlab_keys.rb
|
||||
+++ b/lib/gitlab_keys.rb
|
||||
@@ -2,7 +2,7 @@ class GitlabKeys # rubocop:disable Metrics/ClassLength
|
||||
attr_accessor :auth_file, :key
|
||||
|
||||
def self.command(whatever)
|
||||
- "#{ROOT_PATH}/bin/gitlab-shell #{whatever}"
|
||||
+ "/run/current-system/sw/bin/gitlab-shell #{whatever}"
|
||||
end
|
||||
|
||||
def self.command_key(key_id)
|
||||
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
|
||||
index 2cb76a8..f59ad5e 100644
|
||||
--- a/lib/gitlab_shell.rb
|
||||
+++ b/lib/gitlab_shell.rb
|
||||
@@ -195,7 +195,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
|
||||
|
||||
args = [executable, gitaly_address, json_args]
|
||||
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
|
||||
- Kernel.exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
|
||||
+ # Except we don't, because we're already in the right directory on nixos!
|
||||
+ Kernel.exec(env, *args, unsetenv_others: true)
|
||||
end
|
||||
|
||||
def api
|
|
@ -1,71 +0,0 @@
|
|||
diff --git a/go/internal/config/config.go b/go/internal/config/config.go
|
||||
index f951fe6..b422fe3 100644
|
||||
--- a/go/internal/config/config.go
|
||||
+++ b/go/internal/config/config.go
|
||||
@@ -3,7 +3,6 @@ package config
|
||||
import (
|
||||
"io/ioutil"
|
||||
"net/url"
|
||||
- "os"
|
||||
"path"
|
||||
"strings"
|
||||
|
||||
@@ -30,16 +29,13 @@ type Config struct {
|
||||
}
|
||||
|
||||
func New() (*Config, error) {
|
||||
- dir, err := os.Getwd()
|
||||
- if err != nil {
|
||||
- return nil, err
|
||||
- }
|
||||
+ dir := "/run/gitlab"
|
||||
|
||||
return NewFromDir(dir)
|
||||
}
|
||||
|
||||
func NewFromDir(dir string) (*Config, error) {
|
||||
- return newFromFile(path.Join(dir, configFile))
|
||||
+ return newFromFile("/run/gitlab/shell-config.yml")
|
||||
}
|
||||
|
||||
func (c *Config) FeatureEnabled(featureName string) bool {
|
||||
diff --git a/lib/gitlab_keys.rb b/lib/gitlab_keys.rb
|
||||
index 0600a18..c46f2d7 100644
|
||||
--- a/lib/gitlab_keys.rb
|
||||
+++ b/lib/gitlab_keys.rb
|
||||
@@ -10,7 +10,7 @@ class GitlabKeys # rubocop:disable Metrics/ClassLength
|
||||
attr_accessor :auth_file, :key
|
||||
|
||||
def self.command(whatever)
|
||||
- "#{ROOT_PATH}/bin/gitlab-shell #{whatever}"
|
||||
+ "/run/current-system/sw/bin/gitlab-shell #{whatever}"
|
||||
end
|
||||
|
||||
def self.command_key(key_id)
|
||||
diff --git a/lib/gitlab_shell.rb b/lib/gitlab_shell.rb
|
||||
index 2cb76a8..f59ad5e 100644
|
||||
--- a/lib/gitlab_shell.rb
|
||||
+++ b/lib/gitlab_shell.rb
|
||||
@@ -190,7 +190,8 @@ class GitlabShell # rubocop:disable Metrics/ClassLength
|
||||
|
||||
args = [executable, gitaly_address, json_args]
|
||||
# We use 'chdir: ROOT_PATH' to let the next executable know where config.yml is.
|
||||
- Kernel.exec(env, *args, unsetenv_others: true, chdir: ROOT_PATH)
|
||||
+ # Except we don't, because we're already in the right directory on nixos!
|
||||
+ Kernel.exec(env, *args, unsetenv_others: true)
|
||||
end
|
||||
|
||||
def api
|
||||
diff --git a/go/internal/command/fallback/fallback.go b/go/internal/command/fallback/fallback.go
|
||||
index 2cb76a8..f59ad5e 100644
|
||||
--- a/go/internal/command/fallback/fallback.go
|
||||
+++ b/go/internal/command/fallback/fallback.go
|
||||
@@ -21,7 +21,7 @@
|
||||
)
|
||||
|
||||
func (c *Command) Execute() error {
|
||||
- rubyCmd := filepath.Join(c.RootDir, "bin", RubyProgram)
|
||||
+ rubyCmd := filepath.Join("/run/current-system/sw/bin", RubyProgram)
|
||||
|
||||
// Ensure rubyArgs[0] is the full path to gitlab-shell-ruby
|
||||
rubyArgs := append([]string{rubyCmd}, c.Args[1:]...)
|
|
@ -1,25 +1,37 @@
|
|||
{ stdenv, fetchFromGitLab, git, go }:
|
||||
{ stdenv, fetchFromGitLab, git, buildGoPackage }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
buildGoPackage rec {
|
||||
pname = "gitlab-workhorse";
|
||||
|
||||
version = "8.7.0";
|
||||
version = "8.10.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "gitlab-org";
|
||||
repo = "gitlab-workhorse";
|
||||
rev = "v${version}";
|
||||
sha256 = "1zlngc498hnzbxwdjn3ymr0xwrnfgnzzhn9lyf37yfbjl8x28n3z";
|
||||
sha256 = "11cfhh48dga5ghfcijb68gbx0nfr5bs3vvp2j1gam9ac37fpvk0x";
|
||||
};
|
||||
|
||||
buildInputs = [ git go ];
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";
|
||||
goDeps = ./deps.nix;
|
||||
buildInputs = [ git ];
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" "VERSION=${version}" "GOCACHE=$(TMPDIR)/go-cache" ];
|
||||
|
||||
# gitlab-workhorse depends on an older version of labkit which
|
||||
# contains old, vendored versions of some packages; gitlab-workhorse
|
||||
# also explicitly depends on newer versions of these libraries,
|
||||
# but buildGoPackage exposes the vendored versions instead,
|
||||
# leading to compilation errors. Since the vendored libraries
|
||||
# aren't used here anyway, we'll just remove them.
|
||||
postConfigure = ''
|
||||
rm -r "$NIX_BUILD_TOP/go/src/gitlab.com/gitlab-org/labkit/vendor"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.gitlab.com/;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ fpletz globin ];
|
||||
maintainers = with maintainers; [ fpletz globin talyz ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
||||
|
|
885
pkgs/applications/version-management/gitlab/gitlab-workhorse/deps.nix
generated
Normal file
885
pkgs/applications/version-management/gitlab/gitlab-workhorse/deps.nix
generated
Normal file
|
@ -0,0 +1,885 @@
|
|||
# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
|
||||
[
|
||||
{
|
||||
goPackagePath = "cloud.google.com/go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://code.googlesource.com/gocloud";
|
||||
rev = "v0.26.0";
|
||||
sha256 = "149v3ci17g6wd2pm18mzcncq5qpl9hwdjnz3rlbn5rfidyn46la1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/BurntSushi/toml";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/BurntSushi/toml";
|
||||
rev = "v0.3.1";
|
||||
sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/FZambia/sentinel";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/FZambia/sentinel";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "14cfngdy0n5rg7nrvxg1ydcjd18v0s8h33jx9wkln5ms0d59kfly";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/alecthomas/template";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/alecthomas/template";
|
||||
rev = "a0175ee3bccc";
|
||||
sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/alecthomas/units";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/alecthomas/units";
|
||||
rev = "2efee857e7cf";
|
||||
sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/beorn7/perks";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/beorn7/perks";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "1i1nz1f6g55xi2y3aiaz5kqfgvknarbfl4f0sx4nyyb4s7xb1z9x";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/certifi/gocertifi";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/certifi/gocertifi";
|
||||
rev = "ee1a9a0726d2";
|
||||
sha256 = "08l6lqaw83pva6fa0aafmhmy1mhb145av21772zfh3ij809a37i4";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/client9/misspell";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/client9/misspell";
|
||||
rev = "v0.3.4";
|
||||
sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/client9/reopen";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/client9/reopen";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "0f0dpdbmvk7w518c6zjhlmp65y55vvx47x4lq9pgzvcbsvjsf18s";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/cloudflare/tableflip";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/cloudflare/tableflip";
|
||||
rev = "8392f1641731";
|
||||
sha256 = "0by5hk8s0bhhl3kiw658p5g53zvc61k4q2wxnh1w64p5ghd1rfn8";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/codahale/hdrhistogram";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/codahale/hdrhistogram";
|
||||
rev = "3a0bb77429bd";
|
||||
sha256 = "1zampgfjbxy192cbwdi7g86l1idxaam96d834wncnpfdwgh5kl57";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/davecgh/go-spew";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/davecgh/go-spew";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/dgrijalva/jwt-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/dgrijalva/jwt-go";
|
||||
rev = "v3.2.0";
|
||||
sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/fsnotify/fsnotify";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/fsnotify/fsnotify";
|
||||
rev = "v1.4.7";
|
||||
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/getsentry/raven-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/getsentry/raven-go";
|
||||
rev = "v0.1.2";
|
||||
sha256 = "1dl80kar4lzdcfl3w6jssi1ld6bv0rmx6sp6bz6rzysfr9ilm02z";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/go-kit/kit";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/go-kit/kit";
|
||||
rev = "v0.8.0";
|
||||
sha256 = "1rcywbc2pvab06qyf8pc2rdfjv7r6kxdv2v4wnpqnjhz225wqvc0";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/go-logfmt/logfmt";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/go-logfmt/logfmt";
|
||||
rev = "v0.3.0";
|
||||
sha256 = "1gkgh3k5w1xwb2qbjq52p6azq3h1c1rr6pfwjlwj1zrijpzn2xb9";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/go-stack/stack";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/go-stack/stack";
|
||||
rev = "v1.8.0";
|
||||
sha256 = "0wk25751ryyvxclyp8jdk5c3ar0cmfr8lrjb66qbg4808x66b96v";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/gogo/protobuf";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/gogo/protobuf";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "1525pq7r6h3s8dncvq8gxi893p2nq8dxpzvq0nfl5b4p6mq0v1c2";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/gddo";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/gddo";
|
||||
rev = "af0f2af80721";
|
||||
sha256 = "0ja0xwgg31i2fyqn0b9sf1rjsqkw34kwrr0k0iczzn19mhhc3m7j";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/glog";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/glog";
|
||||
rev = "23def4e6c14b";
|
||||
sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/lint";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/lint";
|
||||
rev = "06c8688daad7";
|
||||
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/mock";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/mock";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0ap8wb6pdl6ccmdb43advjll2ly4sz26wsc3axw0hbrjrybybzgy";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/golang/protobuf";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/protobuf";
|
||||
rev = "v1.3.1";
|
||||
sha256 = "15am4s4646qy6iv0g3kkqq52rzykqjhm4bf08dk0fy2r58knpsyl";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/gomodule/redigo";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/gomodule/redigo";
|
||||
rev = "v2.0.0";
|
||||
sha256 = "1kg7s8027b4g1sfw0v3nh30c15j407kv684s53gg281r807dnfpk";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/google/go-cmp";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/google/go-cmp";
|
||||
rev = "v0.3.1";
|
||||
sha256 = "1caw49i0plkjxir7kdf5qhwls3krqwfmi7g4h392rdfwi3kfahx1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/google/renameio";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/google/renameio";
|
||||
rev = "v0.1.0";
|
||||
sha256 = "1ki2x5a9nrj17sn092d6n4zr29lfg5ydv4xz5cp58z6cw8ip43jx";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/google/uuid";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/google/uuid";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/gopherjs/gopherjs";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/gopherjs/gopherjs";
|
||||
rev = "0766667cb4d1";
|
||||
sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/gorilla/websocket";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/gorilla/websocket";
|
||||
rev = "v1.4.0";
|
||||
sha256 = "00i4vb31nsfkzzk7swvx3i75r2d960js3dri1875vypk3v2s0pzk";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/grpc-ecosystem/go-grpc-middleware";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/grpc-ecosystem/go-grpc-middleware";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "0lwgxih021xfhfb1xb9la5f98bpgpaiz63sbllx77qwwl2rmhrsp";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/grpc-ecosystem/go-grpc-prometheus";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/grpc-ecosystem/go-grpc-prometheus";
|
||||
rev = "v1.2.0";
|
||||
sha256 = "1lzk54h7np32b3acidg1ggbn8ppbnns0m71gcg9d1qkkdh8zrijl";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/hpcloud/tail";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/hpcloud/tail";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "1njpzc0pi1acg5zx9y6vj9xi6ksbsc5d387rd6904hy6rh2m6kn0";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/jfbus/httprs";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/jfbus/httprs";
|
||||
rev = "b0af8319bb15";
|
||||
sha256 = "05cg9a27i9g92n3bivqrrqznccl5lfadlk97sp9izmd368dl5qvc";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/jpillora/backoff";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/jpillora/backoff";
|
||||
rev = "8eab2debe79d";
|
||||
sha256 = "1m5z0703094vhbbmp6s7n6kk7ci5s1pfjq466mz14zp8d1w0yn3x";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/json-iterator/go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/json-iterator/go";
|
||||
rev = "v1.1.6";
|
||||
sha256 = "08caswxvdn7nvaqyj5kyny6ghpygandlbw9vxdj7l5vkp7q0s43r";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/jtolds/gls";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/jtolds/gls";
|
||||
rev = "v4.20.0";
|
||||
sha256 = "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/julienschmidt/httprouter";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/julienschmidt/httprouter";
|
||||
rev = "v1.2.0";
|
||||
sha256 = "1k8bylc9s4vpvf5xhqh9h246dl1snxrzzz0614zz88cdh8yzs666";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kelseyhightower/envconfig";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kelseyhightower/envconfig";
|
||||
rev = "v1.3.0";
|
||||
sha256 = "1zcq480ig7wbg4378qcfxznp2gzqmk7x6rbxizflvg9v2f376vrw";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kisielk/gotool";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kisielk/gotool";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/konsorten/go-windows-terminal-sequences";
|
||||
rev = "v1.0.2";
|
||||
sha256 = "09mn209ika7ciy87xf2x31dq5fnqw39jidgaljvmqxwk7ff1hnx7";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/logfmt";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/logfmt";
|
||||
rev = "b84e30acd515";
|
||||
sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/pretty";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/pretty";
|
||||
rev = "v0.1.0";
|
||||
sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/pty";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/pty";
|
||||
rev = "v1.1.1";
|
||||
sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/kr/text";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/kr/text";
|
||||
rev = "v0.1.0";
|
||||
sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/libgit2/git2go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/libgit2/git2go";
|
||||
rev = "ecaeb7a21d47";
|
||||
sha256 = "14r7ryff93r49g94f6kg66xc0y6rwb31lj22s3qmzmlgywk0pgvr";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/lightstep/lightstep-tracer-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/lightstep/lightstep-tracer-go";
|
||||
rev = "v0.15.6";
|
||||
sha256 = "10n5r66g44s6rnz5kf86s4a3p1g55kc1kxqhnk7bx7mlayndgpmb";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/matttproud/golang_protobuf_extensions";
|
||||
rev = "v1.0.1";
|
||||
sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/mitchellh/copystructure";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/mitchellh/copystructure";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "05njg92w1088v4yl0js0zdrpfq6k37i9j14mxkr3p90p5yd9rrrr";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/mitchellh/reflectwalk";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/mitchellh/reflectwalk";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "0wzkp0fdx22n8f7y9y37dgmnlrlfsv9zjdb48cbx7rsqsbnny7l0";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/modern-go/concurrent";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/modern-go/concurrent";
|
||||
rev = "bacd9c7ef1dd";
|
||||
sha256 = "0s0fxccsyb8icjmiym5k7prcqx36hvgdwl588y0491gi18k5i4zs";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/modern-go/reflect2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/modern-go/reflect2";
|
||||
rev = "v1.0.1";
|
||||
sha256 = "06a3sablw53n1dqqbr2f53jyksbxdmmk8axaas4yvnhyfi55k4lf";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/mwitkow/go-conntrack";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/mwitkow/go-conntrack";
|
||||
rev = "cc309e4a2223";
|
||||
sha256 = "0nbrnpk7bkmqg9mzwsxlm0y8m7s9qd9phr1q30qlx2qmdmz7c1mf";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/onsi/ginkgo";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/onsi/ginkgo";
|
||||
rev = "v1.7.0";
|
||||
sha256 = "14wgpdrvpc35rdz3859bz53sc1g4vpr1fysy15wy3ff9gmqs14yg";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/onsi/gomega";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/onsi/gomega";
|
||||
rev = "v1.4.3";
|
||||
sha256 = "1c8rqg5i2hz3snmq7s41yar1zjnzilb0fyiyhkg83v97afcfx79v";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/opentracing/opentracing-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/opentracing/opentracing-go";
|
||||
rev = "v1.0.2";
|
||||
sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/philhofer/fwd";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/philhofer/fwd";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "1pg84khadh79v42y8sjsdgfb54vw2kzv7hpapxkifgj0yvcp30g2";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/pkg/errors";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/pkg/errors";
|
||||
rev = "v0.8.0";
|
||||
sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/pmezard/go-difflib";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/pmezard/go-difflib";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/prometheus/client_golang";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/prometheus/client_golang";
|
||||
rev = "v1.0.0";
|
||||
sha256 = "1f03ndyi3jq7zdxinnvzimz3s4z2374r6dikkc8i42xzb6d1bli6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/prometheus/client_model";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/prometheus/client_model";
|
||||
rev = "fd36f4220a90";
|
||||
sha256 = "1bs5d72k361llflgl94c22n0w53j30rsfh84smgk8mbjbcmjsaa5";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/prometheus/common";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/prometheus/common";
|
||||
rev = "v0.4.1";
|
||||
sha256 = "0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/prometheus/procfs";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/prometheus/procfs";
|
||||
rev = "v0.0.2";
|
||||
sha256 = "0s7pvs7fgnfpmym3cd0k219av321h9sf3yvdlnn3qy0ps280lg7k";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/rafaeljusto/redigomock";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/rafaeljusto/redigomock";
|
||||
rev = "257e089e14a1";
|
||||
sha256 = "1k572vsda7q5l42s1kn5bjkfb30jshsbc96dz4cnghg43qylyd6h";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/rogpeppe/go-internal";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/rogpeppe/go-internal";
|
||||
rev = "v1.3.0";
|
||||
sha256 = "0mcdh1licgnnahwml9y2iq6xy5x9xmjw5frcnds2s3wpjyqrl216";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/sebest/xff";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/sebest/xff";
|
||||
rev = "6c115e0ffa35";
|
||||
sha256 = "0l11d8mc870vxzgi74cc9dqr7kgxjmbfkfi53gc30rsyx877jx4h";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/sirupsen/logrus";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/sirupsen/logrus";
|
||||
rev = "v1.3.0";
|
||||
sha256 = "0ib7k8cwxn53dyxd3af1g81z018n77n6q64pm4miznirf7c2c9gk";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/smartystreets/assertions";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/smartystreets/assertions";
|
||||
rev = "b2de0cb4f26d";
|
||||
sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/smartystreets/goconvey";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/smartystreets/goconvey";
|
||||
rev = "505e41936337";
|
||||
sha256 = "07zjxwszayal88z1j2bwnqrsa32vg8l4nivks5yfr9j8xfsw7n6m";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/stretchr/objx";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/stretchr/objx";
|
||||
rev = "v0.1.1";
|
||||
sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/stretchr/testify";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/stretchr/testify";
|
||||
rev = "v1.3.0";
|
||||
sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/tinylib/msgp";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/tinylib/msgp";
|
||||
rev = "v1.1.0";
|
||||
sha256 = "08ha23sn14071ywrgxlyj7r523vzdwx1i83dcp1mqa830glgqaff";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/uber-go/atomic";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber-go/atomic";
|
||||
rev = "v1.3.2";
|
||||
sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/uber/jaeger-client-go";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber/jaeger-client-go";
|
||||
rev = "v2.15.0";
|
||||
sha256 = "0ki23m9zrf3vxp839fnp9ckr4m28y6mpad8g5s5lr5k8jkl0sfwj";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "github.com/uber/jaeger-lib";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber/jaeger-lib";
|
||||
rev = "v1.5.0";
|
||||
sha256 = "113fwpn80ylx970w8h7nfqnhh18dpx1jadbk7rbr8k68q4di4y0q";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/gitaly";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gitlab.com/gitlab-org/gitaly.git";
|
||||
rev = "v1.57.0";
|
||||
sha256 = "0mgawp5afcv9s4y8fq3mc4dn6hhdg1shbns8vmjwklh9bia988cy";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gitlab.com/gitlab-org/labkit";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gitlab.com/gitlab-org/labkit.git";
|
||||
rev = "905271af7abb";
|
||||
sha256 = "144w5dikd82wz53drml9khlx39pmp6kgqccc5c0xfzpijbj7krbd";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "go.uber.org/atomic";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/uber-go/atomic";
|
||||
rev = "v1.3.2";
|
||||
sha256 = "11pzvjys5ddjjgrv94pgk9pnip9yyb54z7idf33zk7p7xylpnsv6";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/crypto";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/crypto";
|
||||
rev = "20be4c3c3ed5";
|
||||
sha256 = "1ph7y8v30hc95h1dwr7vrhg1nzs47a261qin6zg8mhf12g5k2lxb";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/lint";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/lint";
|
||||
rev = "06c8688daad7";
|
||||
sha256 = "0xi94dwvz50a66bq1hp9fyqkym5mcpdxdb1hrfvicldgjf37lc47";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/mod";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/mod";
|
||||
rev = "4bf6d317e70e";
|
||||
sha256 = "19lg1ly3j31anx92p0hynic1gjk417wwxphfdrb2cq1c19kj3r17";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/net";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/net";
|
||||
rev = "d28f0bde5980";
|
||||
sha256 = "18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/oauth2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/oauth2";
|
||||
rev = "d2e6202438be";
|
||||
sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/sync";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/sync";
|
||||
rev = "112230192c58";
|
||||
sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/sys";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/sys";
|
||||
rev = "953cdadca894";
|
||||
sha256 = "0gkha4whk8xkcv3isigbs250akag99isxnd3v9xmy0kl3g88hxy1";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/text";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/text";
|
||||
rev = "v0.3.0";
|
||||
sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "golang.org/x/tools";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://go.googlesource.com/tools";
|
||||
rev = "6e04913cbbac";
|
||||
sha256 = "1314j8r4cp69a12nqdaljd06r6hmh3b1v4xyrz8prw6gx5jg7h3q";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "google.golang.org/appengine";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/golang/appengine";
|
||||
rev = "v1.1.0";
|
||||
sha256 = "1pz202zszg8f35dk5pfhwgcdi3r6dx1l4yk6x6ly7nb4j45zi96x";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "google.golang.org/genproto";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/google/go-genproto";
|
||||
rev = "bd91e49a0898";
|
||||
sha256 = "1f5q04h03q6fksbfkhz13ai5849rkkb8xrmmi7cxs4lzsi6ixkg8";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "google.golang.org/grpc";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/grpc/grpc-go";
|
||||
rev = "v1.16.0";
|
||||
sha256 = "0a9xl6c5j7lvsb4q6ry5p892rjm86p47d4f8xrf0r8lxblf79qbg";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/DataDog/dd-trace-go.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/DataDog/dd-trace-go.v1";
|
||||
rev = "v1.7.0";
|
||||
sha256 = "0j45skiiayfsaw8id4g20k51zfr0raj47a03q2icka5xrh3qj6yq";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/alecthomas/kingpin.v2";
|
||||
rev = "v2.2.6";
|
||||
sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/check.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/check.v1";
|
||||
rev = "788fd7840127";
|
||||
sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/errgo.v2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/errgo.v2";
|
||||
rev = "v2.1.0";
|
||||
sha256 = "065mbihiy7q67wnql0bzl9y1kkvck5ivra68254zbih52jxwrgr2";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/fsnotify.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/fsnotify.v1";
|
||||
rev = "v1.4.7";
|
||||
sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/tomb.v1";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/tomb.v1";
|
||||
rev = "dd632973f1e7";
|
||||
sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "gopkg.in/yaml.v2";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://gopkg.in/yaml.v2";
|
||||
rev = "v2.2.2";
|
||||
sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
|
||||
};
|
||||
}
|
||||
{
|
||||
goPackagePath = "honnef.co/go/tools";
|
||||
fetch = {
|
||||
type = "git";
|
||||
url = "https://github.com/dominikh/go-tools";
|
||||
rev = "v0.0.1-2019.2.2";
|
||||
sha256 = "1vndpwg797z2gw9h9378iq99aqy7nalqx82lgvcsaqnkypdmppnd";
|
||||
};
|
||||
}
|
||||
]
|
|
@ -1,449 +0,0 @@
|
|||
source 'https://rubygems.org'
|
||||
|
||||
gem 'rails', '5.2.3'
|
||||
|
||||
# Improves copy-on-write performance for MRI
|
||||
gem 'nakayoshi_fork', '~> 0.0.4'
|
||||
|
||||
# Responders respond_to and respond_with
|
||||
gem 'responders', '~> 2.0'
|
||||
|
||||
gem 'sprockets', '~> 3.7.0'
|
||||
|
||||
# Default values for AR models
|
||||
gem 'default_value_for', '~> 3.2.0'
|
||||
|
||||
# Supported DBs
|
||||
gem 'mysql2', '~> 0.4.10', group: :mysql
|
||||
gem 'pg', '~> 1.1', group: :postgres
|
||||
|
||||
gem 'rugged', '~> 0.28'
|
||||
gem 'grape-path-helpers', '~> 1.1'
|
||||
|
||||
gem 'faraday', '~> 0.12'
|
||||
|
||||
# Authentication libraries
|
||||
gem 'devise', '~> 4.6'
|
||||
gem 'doorkeeper', '~> 4.3'
|
||||
gem 'doorkeeper-openid_connect', '~> 1.5'
|
||||
gem 'omniauth', '~> 1.8'
|
||||
gem 'omniauth-auth0', '~> 2.0.0'
|
||||
gem 'omniauth-azure-oauth2', '~> 0.0.9'
|
||||
gem 'omniauth-cas3', '~> 1.1.4'
|
||||
gem 'omniauth-facebook', '~> 4.0.0'
|
||||
gem 'omniauth-github', '~> 1.3'
|
||||
gem 'omniauth-gitlab', '~> 1.0.2'
|
||||
gem 'omniauth-google-oauth2', '~> 0.6.0'
|
||||
gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
|
||||
gem 'omniauth-oauth2-generic', '~> 0.2.2'
|
||||
gem 'omniauth-saml', '~> 1.10'
|
||||
gem 'omniauth-shibboleth', '~> 1.3.0'
|
||||
gem 'omniauth-twitter', '~> 1.4'
|
||||
gem 'omniauth_crowd', '~> 2.2.0'
|
||||
gem 'omniauth-authentiq', '~> 0.3.3'
|
||||
gem 'omniauth_openid_connect', '~> 0.3.1'
|
||||
gem "omniauth-ultraauth", '~> 0.0.2'
|
||||
gem 'omniauth-salesforce', '~> 1.0.5'
|
||||
gem 'rack-oauth2', '~> 1.9.3'
|
||||
gem 'jwt', '~> 2.1.0'
|
||||
|
||||
# Spam and anti-bot protection
|
||||
gem 'recaptcha', '~> 4.11', require: 'recaptcha/rails'
|
||||
gem 'akismet', '~> 2.0'
|
||||
|
||||
# Two-factor authentication
|
||||
gem 'devise-two-factor', '~> 3.0.0'
|
||||
gem 'rqrcode-rails3', '~> 0.1.7'
|
||||
gem 'attr_encrypted', '~> 3.1.0'
|
||||
gem 'u2f', '~> 0.2.1'
|
||||
|
||||
# GitLab Pages
|
||||
gem 'validates_hostname', '~> 1.0.6'
|
||||
gem 'rubyzip', '~> 1.2.2', require: 'zip'
|
||||
# GitLab Pages letsencrypt support
|
||||
gem 'acme-client', '~> 2.0.2'
|
||||
|
||||
# Browser detection
|
||||
gem 'browser', '~> 2.5'
|
||||
|
||||
# GPG
|
||||
gem 'gpgme', '~> 2.0.18'
|
||||
|
||||
# LDAP Auth
|
||||
# GitLab fork with several improvements to original library. For full list of changes
|
||||
# see https://github.com/intridea/omniauth-ldap/compare/master...gitlabhq:master
|
||||
gem 'gitlab_omniauth-ldap', '~> 2.1.1', require: 'omniauth-ldap'
|
||||
gem 'net-ldap'
|
||||
|
||||
# API
|
||||
gem 'grape', '~> 1.1.0'
|
||||
gem 'grape-entity', '~> 0.7.1'
|
||||
gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
|
||||
|
||||
# GraphQL API
|
||||
gem 'graphql', '~> 1.8.0'
|
||||
gem 'graphiql-rails', '~> 1.4.10'
|
||||
gem 'apollo_upload_server', '~> 2.0.0.beta3'
|
||||
gem 'graphql-docs', '~> 1.6.0', group: [:development, :test]
|
||||
|
||||
# Disable strong_params so that Mash does not respond to :permitted?
|
||||
gem 'hashie-forbidden_attributes'
|
||||
|
||||
# Pagination
|
||||
gem 'kaminari', '~> 1.0'
|
||||
|
||||
# HAML
|
||||
gem 'hamlit', '~> 2.8.8'
|
||||
|
||||
# Files attachments
|
||||
gem 'carrierwave', '~> 1.3'
|
||||
gem 'mini_magick'
|
||||
|
||||
# for backups
|
||||
gem 'fog-aws', '~> 3.5'
|
||||
# Locked until fog-google resolves https://github.com/fog/fog-google/issues/421.
|
||||
# Also see config/initializers/fog_core_patch.rb.
|
||||
gem 'fog-core', '= 2.1.0'
|
||||
gem 'fog-google', '~> 1.8'
|
||||
gem 'fog-local', '~> 0.6'
|
||||
gem 'fog-openstack', '~> 1.0'
|
||||
gem 'fog-rackspace', '~> 0.1.1'
|
||||
gem 'fog-aliyun', '~> 0.3'
|
||||
|
||||
# for Google storage
|
||||
gem 'google-api-client', '~> 0.23'
|
||||
|
||||
# for aws storage
|
||||
gem 'unf', '~> 0.1.4'
|
||||
|
||||
# Seed data
|
||||
gem 'seed-fu', '~> 2.3.7'
|
||||
|
||||
# Markdown and HTML processing
|
||||
gem 'html-pipeline', '~> 2.8'
|
||||
gem 'deckar01-task_list', '2.2.0'
|
||||
gem 'gitlab-markup', '~> 1.7.0'
|
||||
gem 'github-markup', '~> 1.7.0', require: 'github/markup'
|
||||
gem 'commonmarker', '~> 0.17'
|
||||
gem 'RedCloth', '~> 4.3.2'
|
||||
gem 'rdoc', '~> 6.0'
|
||||
gem 'org-ruby', '~> 0.9.12'
|
||||
gem 'creole', '~> 0.5.0'
|
||||
gem 'wikicloth', '0.8.1'
|
||||
gem 'asciidoctor', '~> 2.0.10'
|
||||
gem 'asciidoctor-include-ext', '~> 0.3.1', require: false
|
||||
gem 'asciidoctor-plantuml', '0.0.9'
|
||||
gem 'rouge', '~> 3.5'
|
||||
gem 'truncato', '~> 0.7.11'
|
||||
gem 'bootstrap_form', '~> 4.2.0'
|
||||
gem 'nokogiri', '~> 1.10.3'
|
||||
gem 'escape_utils', '~> 1.1'
|
||||
|
||||
# Calendar rendering
|
||||
gem 'icalendar'
|
||||
|
||||
# Diffs
|
||||
gem 'diffy', '~> 3.1.0'
|
||||
|
||||
# Application server
|
||||
gem 'rack', '~> 2.0.7'
|
||||
|
||||
group :unicorn do
|
||||
gem 'unicorn', '~> 5.4.1'
|
||||
gem 'unicorn-worker-killer', '~> 0.4.4'
|
||||
end
|
||||
|
||||
group :puma do
|
||||
gem 'puma', '~> 3.12', require: false
|
||||
gem 'puma_worker_killer', require: false
|
||||
gem 'rack-timeout', require: false
|
||||
end
|
||||
|
||||
# State machine
|
||||
gem 'state_machines-activerecord', '~> 0.5.1'
|
||||
|
||||
# Issue tags
|
||||
gem 'acts-as-taggable-on', '~> 6.0'
|
||||
|
||||
# Background jobs
|
||||
gem 'sidekiq', '~> 5.2.7'
|
||||
gem 'sidekiq-cron', '~> 1.0'
|
||||
gem 'redis-namespace', '~> 1.6.0'
|
||||
gem 'gitlab-sidekiq-fetcher', '~> 0.4.0', require: 'sidekiq-reliable-fetch'
|
||||
|
||||
# Cron Parser
|
||||
gem 'fugit', '~> 1.2.1'
|
||||
|
||||
# HTTP requests
|
||||
gem 'httparty', '~> 0.16.4'
|
||||
|
||||
# Colored output to console
|
||||
gem 'rainbow', '~> 3.0'
|
||||
|
||||
# Progress bar
|
||||
gem 'ruby-progressbar'
|
||||
|
||||
# GitLab settings
|
||||
gem 'settingslogic', '~> 2.0.9'
|
||||
|
||||
# Linear-time regex library for untrusted regular expressions
|
||||
gem 're2', '~> 1.1.1'
|
||||
|
||||
# Misc
|
||||
|
||||
gem 'version_sorter', '~> 2.2.4'
|
||||
|
||||
# Export Ruby Regex to Javascript
|
||||
gem 'js_regex', '~> 3.1'
|
||||
|
||||
# User agent parsing
|
||||
gem 'device_detector'
|
||||
|
||||
# Cache
|
||||
gem 'redis-rails', '~> 5.0.2'
|
||||
|
||||
# Redis
|
||||
gem 'redis', '~> 3.2'
|
||||
gem 'connection_pool', '~> 2.0'
|
||||
|
||||
# Discord integration
|
||||
gem 'discordrb-webhooks-blackst0ne', '~> 3.3', require: false
|
||||
|
||||
# HipChat integration
|
||||
gem 'hipchat', '~> 1.5.0'
|
||||
|
||||
# Jira integration
|
||||
gem 'jira-ruby', '~> 1.4'
|
||||
|
||||
# Flowdock integration
|
||||
gem 'flowdock', '~> 0.7'
|
||||
|
||||
# Slack integration
|
||||
gem 'slack-notifier', '~> 1.5.1'
|
||||
|
||||
# Hangouts Chat integration
|
||||
gem 'hangouts-chat', '~> 0.0.5'
|
||||
|
||||
# Asana integration
|
||||
gem 'asana', '~> 0.8.1'
|
||||
|
||||
# FogBugz integration
|
||||
gem 'ruby-fogbugz', '~> 0.2.1'
|
||||
|
||||
# Kubernetes integration
|
||||
gem 'kubeclient', '~> 4.2.2'
|
||||
|
||||
# Sanitize user input
|
||||
gem 'sanitize', '~> 4.6'
|
||||
gem 'babosa', '~> 1.0.2'
|
||||
|
||||
# Sanitizes SVG input
|
||||
gem 'loofah', '~> 2.2'
|
||||
|
||||
# Working with license
|
||||
gem 'licensee', '~> 8.9'
|
||||
|
||||
# Protect against bruteforcing
|
||||
gem 'rack-attack', '~> 4.4.1'
|
||||
|
||||
# Ace editor
|
||||
gem 'ace-rails-ap', '~> 4.1.0'
|
||||
|
||||
# Detect and convert string character encoding
|
||||
gem 'charlock_holmes', '~> 0.7.5'
|
||||
|
||||
# Detect mime content type from content
|
||||
gem 'mimemagic', '~> 0.3.2'
|
||||
|
||||
# Faster blank
|
||||
gem 'fast_blank'
|
||||
|
||||
# Parse time & duration
|
||||
gem 'chronic', '~> 0.10.2'
|
||||
gem 'chronic_duration', '~> 0.10.6'
|
||||
|
||||
gem 'webpack-rails', '~> 0.9.10'
|
||||
gem 'rack-proxy', '~> 0.6.0'
|
||||
|
||||
gem 'sassc-rails', '~> 2.1.0'
|
||||
gem 'uglifier', '~> 2.7.2'
|
||||
|
||||
gem 'addressable', '~> 2.5.2'
|
||||
gem 'font-awesome-rails', '~> 4.7'
|
||||
gem 'gemojione', '~> 3.3'
|
||||
gem 'gon', '~> 6.2'
|
||||
gem 'request_store', '~> 1.3'
|
||||
gem 'virtus', '~> 1.0.1'
|
||||
gem 'base32', '~> 0.3.0'
|
||||
|
||||
# Sentry integration
|
||||
gem 'sentry-raven', '~> 2.9'
|
||||
|
||||
gem 'premailer-rails', '~> 1.9.7'
|
||||
|
||||
# LabKit: Tracing and Correlation
|
||||
gem 'gitlab-labkit', '~> 0.3.0'
|
||||
|
||||
# I18n
|
||||
gem 'ruby_parser', '~> 3.8', require: false
|
||||
gem 'rails-i18n', '~> 5.1'
|
||||
gem 'gettext_i18n_rails', '~> 1.8.0'
|
||||
gem 'gettext_i18n_rails_js', '~> 1.3'
|
||||
gem 'gettext', '~> 3.2.2', require: false, group: :development
|
||||
|
||||
gem 'batch-loader', '~> 1.4.0'
|
||||
|
||||
# Perf bar
|
||||
gem 'peek', '~> 1.0.1'
|
||||
gem 'peek-gc', '~> 0.0.2'
|
||||
gem 'peek-mysql2', '~> 1.2.0', group: :mysql
|
||||
gem 'peek-pg', '~> 1.3.0', group: :postgres
|
||||
gem 'peek-rblineprof', '~> 0.2.0'
|
||||
gem 'peek-redis', '~> 1.2.0'
|
||||
|
||||
# Memory benchmarks
|
||||
gem 'derailed_benchmarks', require: false
|
||||
|
||||
# Metrics
|
||||
group :metrics do
|
||||
gem 'method_source', '~> 0.8', require: false
|
||||
gem 'influxdb', '~> 0.2', require: false
|
||||
|
||||
# Prometheus
|
||||
gem 'prometheus-client-mmap', '~> 0.9.8'
|
||||
gem 'raindrops', '~> 0.18'
|
||||
end
|
||||
|
||||
group :development do
|
||||
gem 'foreman', '~> 0.84.0'
|
||||
gem 'brakeman', '~> 4.2', require: false
|
||||
|
||||
gem 'letter_opener_web', '~> 1.3.4'
|
||||
gem 'rblineprof', '~> 0.3.6', platform: :mri, require: false
|
||||
|
||||
# Better errors handler
|
||||
gem 'better_errors', '~> 2.5.0'
|
||||
gem 'binding_of_caller', '~> 0.8.0'
|
||||
|
||||
# thin instead webrick
|
||||
gem 'thin', '~> 1.7.0'
|
||||
end
|
||||
|
||||
group :development, :test do
|
||||
gem 'bootsnap', '~> 1.4'
|
||||
gem 'bullet', '~> 5.5.0', require: !!ENV['ENABLE_BULLET']
|
||||
gem 'pry-byebug', '~> 3.5.1', platform: :mri
|
||||
gem 'pry-rails', '~> 0.3.4'
|
||||
|
||||
gem 'awesome_print', require: false
|
||||
gem 'fuubar', '~> 2.2.0'
|
||||
|
||||
gem 'database_cleaner', '~> 1.7.0'
|
||||
gem 'factory_bot_rails', '~> 4.8.2'
|
||||
gem 'rspec-rails', '~> 3.8.0'
|
||||
gem 'rspec-retry', '~> 0.6.1'
|
||||
gem 'rspec_profiling', '~> 0.0.5'
|
||||
gem 'rspec-set', '~> 0.1.3'
|
||||
gem 'rspec-parameterized', require: false
|
||||
|
||||
# Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
|
||||
gem 'minitest', '~> 5.11.0'
|
||||
|
||||
# Generate Fake data
|
||||
gem 'ffaker', '~> 2.10'
|
||||
|
||||
gem 'capybara', '~> 3.22.0'
|
||||
gem 'capybara-screenshot', '~> 1.0.22'
|
||||
gem 'selenium-webdriver', '~> 3.141'
|
||||
|
||||
gem 'spring', '~> 2.0.0'
|
||||
gem 'spring-commands-rspec', '~> 1.0.4'
|
||||
|
||||
gem 'gitlab-styles', '~> 2.7', require: false
|
||||
# Pin these dependencies, otherwise a new rule could break the CI pipelines
|
||||
gem 'rubocop', '~> 0.69.0'
|
||||
gem 'rubocop-performance', '~> 1.1.0'
|
||||
gem 'rubocop-rspec', '~> 1.22.1'
|
||||
|
||||
gem 'scss_lint', '~> 0.56.0', require: false
|
||||
gem 'haml_lint', '~> 0.31.0', require: false
|
||||
gem 'simplecov', '~> 0.16.1', require: false
|
||||
gem 'bundler-audit', '~> 0.5.0', require: false
|
||||
gem 'mdl', '~> 0.5.0', require: false
|
||||
|
||||
gem 'benchmark-ips', '~> 2.3.0', require: false
|
||||
|
||||
gem 'license_finder', '~> 5.4', require: false
|
||||
gem 'knapsack', '~> 1.17'
|
||||
|
||||
gem 'activerecord_sane_schema_dumper', '1.0'
|
||||
|
||||
gem 'stackprof', '~> 0.2.10', require: false
|
||||
|
||||
gem 'simple_po_parser', '~> 1.1.2', require: false
|
||||
|
||||
gem 'timecop', '~> 0.8.0'
|
||||
end
|
||||
|
||||
group :test do
|
||||
gem 'shoulda-matchers', '~> 4.0.1', require: false
|
||||
gem 'email_spec', '~> 2.2.0'
|
||||
gem 'json-schema', '~> 2.8.0'
|
||||
gem 'webmock', '~> 3.5.1'
|
||||
gem 'rails-controller-testing'
|
||||
gem 'sham_rack', '~> 1.3.6'
|
||||
gem 'concurrent-ruby', '~> 1.1'
|
||||
gem 'test-prof', '~> 0.2.5'
|
||||
gem 'rspec_junit_formatter'
|
||||
end
|
||||
|
||||
gem 'octokit', '~> 4.9'
|
||||
|
||||
gem 'mail_room', '~> 0.9.1'
|
||||
|
||||
gem 'email_reply_trimmer', '~> 0.1'
|
||||
gem 'html2text'
|
||||
|
||||
gem 'ruby-prof', '~> 0.17.0'
|
||||
gem 'rbtrace', '~> 0.4', require: false
|
||||
gem 'memory_profiler', '~> 0.9', require: false
|
||||
gem 'benchmark-memory', '~> 0.1', require: false
|
||||
gem 'activerecord-explain-analyze', '~> 0.1', require: false
|
||||
|
||||
# OAuth
|
||||
gem 'oauth2', '~> 1.4'
|
||||
|
||||
# Health check
|
||||
gem 'health_check', '~> 2.6.0'
|
||||
|
||||
# System information
|
||||
gem 'vmstat', '~> 2.3.0'
|
||||
gem 'sys-filesystem', '~> 1.1.6'
|
||||
|
||||
# SSH host key support
|
||||
gem 'net-ssh', '~> 5.2'
|
||||
gem 'sshkey', '~> 2.0'
|
||||
|
||||
# Required for ED25519 SSH host key support
|
||||
group :ed25519 do
|
||||
gem 'ed25519', '~> 1.2'
|
||||
gem 'bcrypt_pbkdf', '~> 1.0'
|
||||
end
|
||||
|
||||
# Gitaly GRPC client
|
||||
gem 'gitaly-proto', '~> 1.37.0', require: 'gitaly'
|
||||
|
||||
gem 'grpc', '~> 1.19.0'
|
||||
|
||||
gem 'google-protobuf', '~> 3.7.1'
|
||||
|
||||
gem 'toml-rb', '~> 1.0.0', require: false
|
||||
|
||||
# Feature toggles
|
||||
gem 'flipper', '~> 0.13.0'
|
||||
gem 'flipper-active_record', '~> 0.13.0'
|
||||
gem 'flipper-active_support_cache_store', '~> 0.13.0'
|
||||
|
||||
# Structured logging
|
||||
gem 'lograge', '~> 0.5'
|
||||
gem 'grape_logging', '~> 1.7'
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -2,6 +2,8 @@ source 'https://rubygems.org'
|
|||
|
||||
gem 'rails', '5.2.3'
|
||||
|
||||
gem 'bootsnap', '~> 1.4'
|
||||
|
||||
# Improves copy-on-write performance for MRI
|
||||
gem 'nakayoshi_fork', '~> 0.0.4'
|
||||
|
||||
|
@ -14,8 +16,7 @@ gem 'sprockets', '~> 3.7.0'
|
|||
gem 'default_value_for', '~> 3.2.0'
|
||||
|
||||
# Supported DBs
|
||||
gem 'mysql2', '~> 0.4.10', group: :mysql
|
||||
gem 'pg', '~> 1.1', group: :postgres
|
||||
gem 'pg', '~> 1.1'
|
||||
|
||||
gem 'rugged', '~> 0.28'
|
||||
gem 'grape-path-helpers', '~> 1.1'
|
||||
|
@ -53,6 +54,7 @@ gem 'gssapi', group: :kerberos
|
|||
# Spam and anti-bot protection
|
||||
gem 'recaptcha', '~> 4.11', require: 'recaptcha/rails'
|
||||
gem 'akismet', '~> 2.0'
|
||||
gem 'invisible_captcha', '~> 0.12.1'
|
||||
|
||||
# Two-factor authentication
|
||||
gem 'devise-two-factor', '~> 3.0.0'
|
||||
|
@ -84,7 +86,10 @@ gem 'grape-entity', '~> 0.7.1'
|
|||
gem 'rack-cors', '~> 1.0.0', require: 'rack/cors'
|
||||
|
||||
# GraphQL API
|
||||
gem 'graphql', '~> 1.8.0'
|
||||
gem 'graphql', '~> 1.9.11'
|
||||
# NOTE: graphiql-rails v1.5+ doesn't work: https://gitlab.com/gitlab-org/gitlab-ce/issues/67293
|
||||
# TODO: remove app/views/graphiql/rails/editors/show.html.erb when https://github.com/rmosolgo/graphiql-rails/pull/71 is released:
|
||||
# https://gitlab.com/gitlab-org/gitlab-ce/issues/67263
|
||||
gem 'graphiql-rails', '~> 1.4.10'
|
||||
gem 'apollo_upload_server', '~> 2.0.0.beta3'
|
||||
gem 'graphql-docs', '~> 1.6.0', group: [:development, :test]
|
||||
|
@ -107,7 +112,7 @@ gem 'fog-aws', '~> 3.5'
|
|||
# Locked until fog-google resolves https://github.com/fog/fog-google/issues/421.
|
||||
# Also see config/initializers/fog_core_patch.rb.
|
||||
gem 'fog-core', '= 2.1.0'
|
||||
gem 'fog-google', '~> 1.8'
|
||||
gem 'fog-google', '~> 1.9'
|
||||
gem 'fog-local', '~> 0.6'
|
||||
gem 'fog-openstack', '~> 1.0'
|
||||
gem 'fog-rackspace', '~> 0.1.1'
|
||||
|
@ -143,10 +148,10 @@ gem 'wikicloth', '0.8.1'
|
|||
gem 'asciidoctor', '~> 2.0.10'
|
||||
gem 'asciidoctor-include-ext', '~> 0.3.1', require: false
|
||||
gem 'asciidoctor-plantuml', '0.0.9'
|
||||
gem 'rouge', '~> 3.5'
|
||||
gem 'rouge', '~> 3.7'
|
||||
gem 'truncato', '~> 0.7.11'
|
||||
gem 'bootstrap_form', '~> 4.2.0'
|
||||
gem 'nokogiri', '~> 1.10.3'
|
||||
gem 'nokogiri', '~> 1.10.4'
|
||||
gem 'escape_utils', '~> 1.1'
|
||||
|
||||
# Calendar rendering
|
||||
|
@ -179,7 +184,7 @@ gem 'acts-as-taggable-on', '~> 6.0'
|
|||
gem 'sidekiq', '~> 5.2.7'
|
||||
gem 'sidekiq-cron', '~> 1.0'
|
||||
gem 'redis-namespace', '~> 1.6.0'
|
||||
gem 'gitlab-sidekiq-fetcher', '~> 0.4.0', require: 'sidekiq-reliable-fetch'
|
||||
gem 'gitlab-sidekiq-fetcher', '0.5.2', require: 'sidekiq-reliable-fetch'
|
||||
|
||||
# Cron Parser
|
||||
gem 'fugit', '~> 1.2.1'
|
||||
|
@ -209,13 +214,13 @@ gem 'js_regex', '~> 3.1'
|
|||
# User agent parsing
|
||||
gem 'device_detector'
|
||||
|
||||
# Cache
|
||||
gem 'redis-rails', '~> 5.0.2'
|
||||
|
||||
# Redis
|
||||
gem 'redis', '~> 3.2'
|
||||
gem 'redis', '~> 4.0'
|
||||
gem 'connection_pool', '~> 2.0'
|
||||
|
||||
# Redis session store
|
||||
gem 'redis-rails', '~> 5.0.2'
|
||||
|
||||
# Discord integration
|
||||
gem 'discordrb-webhooks-blackst0ne', '~> 3.3', require: false
|
||||
|
||||
|
@ -223,7 +228,8 @@ gem 'discordrb-webhooks-blackst0ne', '~> 3.3', require: false
|
|||
gem 'hipchat', '~> 1.5.0'
|
||||
|
||||
# Jira integration
|
||||
gem 'jira-ruby', '~> 1.4'
|
||||
gem 'jira-ruby', '~> 1.7'
|
||||
gem 'atlassian-jwt', '~> 0.2.0'
|
||||
|
||||
# Flowdock integration
|
||||
gem 'flowdock', '~> 0.7'
|
||||
|
@ -241,7 +247,7 @@ gem 'asana', '~> 0.8.1'
|
|||
gem 'ruby-fogbugz', '~> 0.2.1'
|
||||
|
||||
# Kubernetes integration
|
||||
gem 'kubeclient', '~> 4.2.2'
|
||||
gem 'kubeclient', '~> 4.4.0'
|
||||
|
||||
# Sanitize user input
|
||||
gem 'sanitize', '~> 4.6'
|
||||
|
@ -270,7 +276,7 @@ gem 'fast_blank'
|
|||
|
||||
# Parse time & duration
|
||||
gem 'chronic', '~> 0.10.2'
|
||||
gem 'chronic_duration', '~> 0.10.6'
|
||||
gem 'gitlab_chronic_duration', '~> 0.10.6.1'
|
||||
|
||||
gem 'webpack-rails', '~> 0.9.10'
|
||||
gem 'rack-proxy', '~> 0.6.0'
|
||||
|
@ -283,7 +289,6 @@ gem 'font-awesome-rails', '~> 4.7'
|
|||
gem 'gemojione', '~> 3.3'
|
||||
gem 'gon', '~> 6.2'
|
||||
gem 'request_store', '~> 1.3'
|
||||
gem 'virtus', '~> 1.0.1'
|
||||
gem 'base32', '~> 0.3.0'
|
||||
|
||||
gem "gitlab-license", "~> 1.0"
|
||||
|
@ -294,7 +299,7 @@ gem 'sentry-raven', '~> 2.9'
|
|||
gem 'premailer-rails', '~> 1.9.7'
|
||||
|
||||
# LabKit: Tracing and Correlation
|
||||
gem 'gitlab-labkit', '~> 0.3.0'
|
||||
gem 'gitlab-labkit', '~> 0.5'
|
||||
|
||||
# I18n
|
||||
gem 'ruby_parser', '~> 3.8', require: false
|
||||
|
@ -306,12 +311,8 @@ gem 'gettext', '~> 3.2.2', require: false, group: :development
|
|||
gem 'batch-loader', '~> 1.4.0'
|
||||
|
||||
# Perf bar
|
||||
gem 'peek', '~> 1.0.1'
|
||||
gem 'peek-gc', '~> 0.0.2'
|
||||
gem 'peek-mysql2', '~> 1.2.0', group: :mysql
|
||||
gem 'peek-pg', '~> 1.3.0', group: :postgres
|
||||
gem 'peek-rblineprof', '~> 0.2.0'
|
||||
gem 'peek-redis', '~> 1.2.0'
|
||||
# https://gitlab.com/gitlab-org/gitlab-ee/issues/13996
|
||||
gem 'gitlab-peek', '~> 0.0.1', require: 'peek'
|
||||
|
||||
# Snowplow events tracking
|
||||
gem 'snowplow-tracker', '~> 0.6.1'
|
||||
|
@ -325,13 +326,14 @@ group :metrics do
|
|||
gem 'influxdb', '~> 0.2', require: false
|
||||
|
||||
# Prometheus
|
||||
gem 'prometheus-client-mmap', '~> 0.9.8'
|
||||
gem 'prometheus-client-mmap', '~> 0.9.10'
|
||||
gem 'raindrops', '~> 0.18'
|
||||
end
|
||||
|
||||
group :development do
|
||||
gem 'foreman', '~> 0.84.0'
|
||||
gem 'brakeman', '~> 4.2', require: false
|
||||
gem 'danger', '~> 6.0', require: false
|
||||
|
||||
gem 'letter_opener_web', '~> 1.3.4'
|
||||
gem 'rblineprof', '~> 0.3.6', platform: :mri, require: false
|
||||
|
@ -345,7 +347,6 @@ group :development do
|
|||
end
|
||||
|
||||
group :development, :test do
|
||||
gem 'bootsnap', '~> 1.4'
|
||||
gem 'bullet', '~> 5.5.0', require: !!ENV['ENABLE_BULLET']
|
||||
gem 'pry-byebug', '~> 3.5.1', platform: :mri
|
||||
gem 'pry-rails', '~> 0.3.4'
|
||||
|
@ -384,15 +385,12 @@ group :development, :test do
|
|||
gem 'haml_lint', '~> 0.31.0', require: false
|
||||
gem 'simplecov', '~> 0.16.1', require: false
|
||||
gem 'bundler-audit', '~> 0.5.0', require: false
|
||||
gem 'mdl', '~> 0.5.0', require: false
|
||||
|
||||
gem 'benchmark-ips', '~> 2.3.0', require: false
|
||||
|
||||
gem 'license_finder', '~> 5.4', require: false
|
||||
gem 'knapsack', '~> 1.17'
|
||||
|
||||
gem 'activerecord_sane_schema_dumper', '1.0'
|
||||
|
||||
gem 'stackprof', '~> 0.2.10', require: false
|
||||
|
||||
gem 'simple_po_parser', '~> 1.1.2', require: false
|
||||
|
@ -406,7 +404,6 @@ group :test do
|
|||
gem 'json-schema', '~> 2.8.0'
|
||||
gem 'webmock', '~> 3.5.1'
|
||||
gem 'rails-controller-testing'
|
||||
gem 'sham_rack', '~> 1.3.6'
|
||||
gem 'concurrent-ruby', '~> 1.1'
|
||||
gem 'test-prof', '~> 0.2.5'
|
||||
gem 'rspec_junit_formatter'
|
||||
|
@ -419,7 +416,7 @@ gem 'mail_room', '~> 0.9.1'
|
|||
gem 'email_reply_trimmer', '~> 0.1'
|
||||
gem 'html2text'
|
||||
|
||||
gem 'ruby-prof', '~> 0.17.0'
|
||||
gem 'ruby-prof', '~> 1.0.0'
|
||||
gem 'rbtrace', '~> 0.4', require: false
|
||||
gem 'memory_profiler', '~> 0.9', require: false
|
||||
gem 'benchmark-memory', '~> 0.1', require: false
|
||||
|
@ -448,8 +445,8 @@ group :ed25519 do
|
|||
gem 'bcrypt_pbkdf', '~> 1.0'
|
||||
end
|
||||
|
||||
# Gitaly GRPC client
|
||||
gem 'gitaly-proto', '~> 1.37.0', require: 'gitaly'
|
||||
# Gitaly GRPC protocol definitions
|
||||
gem 'gitaly', '~> 1.58.0'
|
||||
|
||||
gem 'grpc', '~> 1.19.0'
|
||||
|
||||
|
@ -461,6 +458,7 @@ gem 'toml-rb', '~> 1.0.0', require: false
|
|||
gem 'flipper', '~> 0.13.0'
|
||||
gem 'flipper-active_record', '~> 0.13.0'
|
||||
gem 'flipper-active_support_cache_store', '~> 0.13.0'
|
||||
gem 'unleash', '~> 0.1.5'
|
||||
|
||||
# Structured logging
|
||||
gem 'lograge', '~> 0.5'
|
||||
|
@ -468,3 +466,6 @@ gem 'grape_logging', '~> 1.7'
|
|||
|
||||
# DNS Lookup
|
||||
gem 'net-dns', '~> 0.9.0'
|
||||
|
||||
# Countries list
|
||||
gem 'countries', '~> 3.0'
|
|
@ -41,8 +41,6 @@ GEM
|
|||
activerecord-explain-analyze (0.1.0)
|
||||
activerecord (>= 4)
|
||||
pg
|
||||
activerecord_sane_schema_dumper (1.0)
|
||||
rails (>= 5, < 6)
|
||||
activestorage (5.2.3)
|
||||
actionpack (= 5.2.3)
|
||||
activerecord (= 5.2.3)
|
||||
|
@ -76,7 +74,8 @@ GEM
|
|||
asciidoctor-plantuml (0.0.9)
|
||||
asciidoctor (>= 1.5.6, < 3.0.0)
|
||||
ast (2.4.0)
|
||||
atomic (1.1.99)
|
||||
atlassian-jwt (0.2.0)
|
||||
jwt (~> 2.1.0)
|
||||
attr_encrypted (3.1.0)
|
||||
encryptor (~> 3.0.0)
|
||||
attr_required (1.0.1)
|
||||
|
@ -109,7 +108,7 @@ GEM
|
|||
binding_ninja (0.2.3)
|
||||
binding_of_caller (0.8.0)
|
||||
debug_inspector (>= 0.0.1)
|
||||
bootsnap (1.4.1)
|
||||
bootsnap (1.4.4)
|
||||
msgpack (~> 1.0)
|
||||
bootstrap_form (4.2.0)
|
||||
actionpack (>= 5.0)
|
||||
|
@ -145,23 +144,31 @@ GEM
|
|||
childprocess (0.9.0)
|
||||
ffi (~> 1.0, >= 1.0.11)
|
||||
chronic (0.10.2)
|
||||
chronic_duration (0.10.6)
|
||||
numerizer (~> 0.1.1)
|
||||
chunky_png (1.3.5)
|
||||
citrus (3.0.2)
|
||||
claide (1.0.3)
|
||||
claide-plugins (0.9.2)
|
||||
cork
|
||||
nap
|
||||
open4 (~> 1.3)
|
||||
coderay (1.1.2)
|
||||
coercible (1.0.0)
|
||||
descendants_tracker (~> 0.0.1)
|
||||
colored2 (3.1.2)
|
||||
commonmarker (0.17.13)
|
||||
ruby-enum (~> 0.5)
|
||||
concord (0.1.5)
|
||||
adamantium (~> 0.2.0)
|
||||
equalizer (~> 0.0.9)
|
||||
concurrent-ruby (1.1.5)
|
||||
concurrent-ruby-ext (1.1.5)
|
||||
concurrent-ruby (= 1.1.5)
|
||||
connection_pool (2.2.2)
|
||||
contracts (0.11.0)
|
||||
cork (0.3.0)
|
||||
colored2 (~> 3.1)
|
||||
countries (3.0.0)
|
||||
i18n_data (~> 0.8.0)
|
||||
sixarm_ruby_unaccent (~> 1.1)
|
||||
unicode_utils (~> 1.4)
|
||||
crack (0.4.3)
|
||||
safe_yaml (~> 1.0.0)
|
||||
crass (1.0.4)
|
||||
|
@ -169,6 +176,19 @@ GEM
|
|||
css_parser (1.5.0)
|
||||
addressable
|
||||
daemons (1.2.6)
|
||||
danger (6.0.9)
|
||||
claide (~> 1.0)
|
||||
claide-plugins (>= 0.9.2)
|
||||
colored2 (~> 3.1)
|
||||
cork (~> 0.1)
|
||||
faraday (~> 0.9)
|
||||
faraday-http-cache (~> 2.0)
|
||||
git (~> 1.5)
|
||||
kramdown (~> 2.0)
|
||||
kramdown-parser-gfm (~> 1.0)
|
||||
no_proxy_fix
|
||||
octokit (~> 4.7)
|
||||
terminal-table (~> 1)
|
||||
database_cleaner (1.7.0)
|
||||
debug_inspector (0.0.3)
|
||||
debugger-ruby_core_source (1.3.8)
|
||||
|
@ -251,6 +271,8 @@ GEM
|
|||
railties (>= 3.0.0)
|
||||
faraday (0.12.2)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
faraday-http-cache (2.0.0)
|
||||
faraday (~> 0.8)
|
||||
faraday_middleware (0.12.2)
|
||||
faraday (>= 0.7.4, < 1.0)
|
||||
faraday_middleware-aws-signers-v4 (0.1.7)
|
||||
|
@ -262,7 +284,7 @@ GEM
|
|||
fast_blank (1.0.0)
|
||||
fast_gettext (1.6.0)
|
||||
ffaker (2.10.0)
|
||||
ffi (1.10.0)
|
||||
ffi (1.11.1)
|
||||
flipper (0.13.0)
|
||||
flipper-active_record (0.13.0)
|
||||
activerecord (>= 3.2, < 6)
|
||||
|
@ -288,7 +310,7 @@ GEM
|
|||
excon (~> 0.58)
|
||||
formatador (~> 0.2)
|
||||
mime-types
|
||||
fog-google (1.8.2)
|
||||
fog-google (1.9.1)
|
||||
fog-core (<= 2.1.0)
|
||||
fog-json (~> 1.2)
|
||||
fog-xml (~> 0.1.0)
|
||||
|
@ -335,24 +357,30 @@ GEM
|
|||
gettext_i18n_rails (>= 0.7.1)
|
||||
po_to_json (>= 1.0.0)
|
||||
rails (>= 3.2.0)
|
||||
gitaly-proto (1.37.0)
|
||||
git (1.5.0)
|
||||
gitaly (1.58.0)
|
||||
grpc (~> 1.0)
|
||||
github-markup (1.7.0)
|
||||
gitlab-labkit (0.3.0)
|
||||
gitlab-labkit (0.5.2)
|
||||
actionpack (~> 5)
|
||||
activesupport (~> 5)
|
||||
grpc (~> 1.19.0)
|
||||
grpc (~> 1.19)
|
||||
jaeger-client (~> 0.10)
|
||||
opentracing (~> 0.4)
|
||||
redis (> 3.0.0, < 5.0.0)
|
||||
gitlab-license (1.0.0)
|
||||
gitlab-markup (1.7.0)
|
||||
gitlab-sidekiq-fetcher (0.4.0)
|
||||
gitlab-peek (0.0.1)
|
||||
railties (>= 4.0.0)
|
||||
gitlab-sidekiq-fetcher (0.5.2)
|
||||
sidekiq (~> 5)
|
||||
gitlab-styles (2.7.0)
|
||||
gitlab-styles (2.8.0)
|
||||
rubocop (~> 0.69.0)
|
||||
rubocop-gitlab-security (~> 0.1.0)
|
||||
rubocop-performance (~> 1.1.0)
|
||||
rubocop-rspec (~> 1.19)
|
||||
gitlab_chronic_duration (0.10.6.1)
|
||||
numerizer (~> 0.1.1)
|
||||
gitlab_omniauth-ldap (2.1.1)
|
||||
net-ldap (~> 0.16)
|
||||
omniauth (~> 1.3)
|
||||
|
@ -402,7 +430,7 @@ GEM
|
|||
graphiql-rails (1.4.10)
|
||||
railties
|
||||
sprockets-rails
|
||||
graphql (1.8.1)
|
||||
graphql (1.9.11)
|
||||
graphql-docs (1.6.0)
|
||||
commonmarker (~> 0.16)
|
||||
escape_utils (~> 1.2)
|
||||
|
@ -461,18 +489,22 @@ GEM
|
|||
httpclient (2.8.3)
|
||||
i18n (1.6.0)
|
||||
concurrent-ruby (~> 1.0)
|
||||
i18n_data (0.8.0)
|
||||
icalendar (2.4.1)
|
||||
ice_nine (0.11.2)
|
||||
influxdb (0.2.3)
|
||||
cause
|
||||
json
|
||||
invisible_captcha (0.12.1)
|
||||
rails (>= 3.2.0)
|
||||
ipaddress (0.8.3)
|
||||
jaeger-client (0.10.0)
|
||||
opentracing (~> 0.3)
|
||||
thrift
|
||||
jaro_winkler (1.5.2)
|
||||
jira-ruby (1.4.1)
|
||||
jaro_winkler (1.5.3)
|
||||
jira-ruby (1.7.1)
|
||||
activesupport
|
||||
atlassian-jwt
|
||||
multipart-post
|
||||
oauth (~> 0.5, >= 0.5.0)
|
||||
jmespath (1.3.1)
|
||||
|
@ -503,8 +535,10 @@ GEM
|
|||
kgio (2.11.2)
|
||||
knapsack (1.17.0)
|
||||
rake
|
||||
kramdown (1.17.0)
|
||||
kubeclient (4.2.2)
|
||||
kramdown (2.1.0)
|
||||
kramdown-parser-gfm (1.1.0)
|
||||
kramdown (~> 2.0)
|
||||
kubeclient (4.4.0)
|
||||
http (~> 3.0)
|
||||
recursive-open-struct (~> 1.0, >= 1.0.4)
|
||||
rest-client (~> 2.0)
|
||||
|
@ -539,10 +573,6 @@ GEM
|
|||
mail_room (0.9.1)
|
||||
marcel (0.3.3)
|
||||
mimemagic (~> 0.3.2)
|
||||
mdl (0.5.0)
|
||||
kramdown (~> 1.12, >= 1.12.0)
|
||||
mixlib-cli (~> 1.7, >= 1.7.0)
|
||||
mixlib-config (~> 2.2, >= 2.2.1)
|
||||
memoist (0.16.0)
|
||||
memoizable (0.4.2)
|
||||
thread_safe (~> 0.3, >= 0.3.1)
|
||||
|
@ -552,29 +582,28 @@ GEM
|
|||
mime-types-data (~> 3.2015)
|
||||
mime-types-data (3.2019.0331)
|
||||
mimemagic (0.3.2)
|
||||
mini_magick (4.8.0)
|
||||
mini_magick (4.9.5)
|
||||
mini_mime (1.0.1)
|
||||
mini_portile2 (2.4.0)
|
||||
minitest (5.11.3)
|
||||
mixlib-cli (1.7.0)
|
||||
mixlib-config (2.2.18)
|
||||
tomlrb
|
||||
msgpack (1.2.10)
|
||||
msgpack (1.3.0)
|
||||
multi_json (1.13.1)
|
||||
multi_xml (0.6.0)
|
||||
multipart-post (2.0.0)
|
||||
murmurhash3 (0.1.6)
|
||||
mustermann (1.0.3)
|
||||
mustermann-grape (1.0.0)
|
||||
mustermann (~> 1.0.0)
|
||||
mysql2 (0.4.10)
|
||||
nakayoshi_fork (0.0.4)
|
||||
nap (1.1.0)
|
||||
net-dns (0.9.0)
|
||||
net-ldap (0.16.0)
|
||||
net-ntp (2.1.3)
|
||||
net-ssh (5.2.0)
|
||||
netrc (0.11.0)
|
||||
nio4r (2.3.1)
|
||||
nokogiri (1.10.3)
|
||||
no_proxy_fix (0.1.2)
|
||||
nokogiri (1.10.4)
|
||||
mini_portile2 (~> 2.4.0)
|
||||
nokogumbo (1.5.0)
|
||||
nokogiri
|
||||
|
@ -650,6 +679,7 @@ GEM
|
|||
addressable (~> 2.5)
|
||||
omniauth (~> 1.3)
|
||||
openid_connect (~> 1.1)
|
||||
open4 (1.3.4)
|
||||
openid_connect (1.1.6)
|
||||
activemodel
|
||||
attr_required (>= 1.0.0)
|
||||
|
@ -670,29 +700,6 @@ GEM
|
|||
parser (2.6.3.0)
|
||||
ast (~> 2.4.0)
|
||||
parslet (1.8.2)
|
||||
peek (1.0.1)
|
||||
concurrent-ruby (>= 0.9.0)
|
||||
concurrent-ruby-ext (>= 0.9.0)
|
||||
railties (>= 4.0.0)
|
||||
peek-gc (0.0.2)
|
||||
peek
|
||||
peek-mysql2 (1.2.0)
|
||||
concurrent-ruby
|
||||
concurrent-ruby-ext
|
||||
mysql2
|
||||
peek
|
||||
peek-pg (1.3.0)
|
||||
concurrent-ruby
|
||||
concurrent-ruby-ext
|
||||
peek
|
||||
pg
|
||||
peek-rblineprof (0.2.0)
|
||||
peek
|
||||
rblineprof
|
||||
peek-redis (1.2.0)
|
||||
atomic (>= 1.0.0)
|
||||
peek
|
||||
redis
|
||||
pg (1.1.4)
|
||||
po_to_json (1.0.1)
|
||||
json (>= 1.6.0)
|
||||
|
@ -708,7 +715,7 @@ GEM
|
|||
parser
|
||||
unparser
|
||||
procto (0.0.3)
|
||||
prometheus-client-mmap (0.9.8)
|
||||
prometheus-client-mmap (0.9.10)
|
||||
pry (0.11.3)
|
||||
coderay (~> 1.1.0)
|
||||
method_source (~> 0.9.0)
|
||||
|
@ -763,7 +770,7 @@ GEM
|
|||
rails-dom-testing (2.0.3)
|
||||
activesupport (>= 4.2.0)
|
||||
nokogiri (>= 1.6)
|
||||
rails-html-sanitizer (1.0.4)
|
||||
rails-html-sanitizer (1.2.0)
|
||||
loofah (~> 2.2, >= 2.2.2)
|
||||
rails-i18n (5.1.1)
|
||||
i18n (>= 0.7, < 2)
|
||||
|
@ -791,17 +798,17 @@ GEM
|
|||
recaptcha (4.13.1)
|
||||
json
|
||||
recursive-open-struct (1.1.0)
|
||||
redis (3.3.5)
|
||||
redis (4.1.2)
|
||||
redis-actionpack (5.0.2)
|
||||
actionpack (>= 4.0, < 6)
|
||||
redis-rack (>= 1, < 3)
|
||||
redis-store (>= 1.1.0, < 2)
|
||||
redis-activesupport (5.0.4)
|
||||
redis-activesupport (5.0.7)
|
||||
activesupport (>= 3, < 6)
|
||||
redis-store (>= 1.3, < 2)
|
||||
redis-namespace (1.6.0)
|
||||
redis (>= 3.0.4)
|
||||
redis-rack (2.0.4)
|
||||
redis-rack (2.0.5)
|
||||
rack (>= 1.5, < 3)
|
||||
redis-store (>= 1.2, < 2)
|
||||
redis-rails (5.0.2)
|
||||
|
@ -827,7 +834,7 @@ GEM
|
|||
retriable (3.1.2)
|
||||
rinku (2.0.0)
|
||||
rotp (2.1.2)
|
||||
rouge (3.5.1)
|
||||
rouge (3.7.0)
|
||||
rqrcode (0.7.0)
|
||||
chunky_png
|
||||
rqrcode-rails3 (0.1.7)
|
||||
|
@ -886,8 +893,8 @@ GEM
|
|||
i18n
|
||||
ruby-fogbugz (0.2.1)
|
||||
crack (~> 0.4)
|
||||
ruby-prof (0.17.0)
|
||||
ruby-progressbar (1.10.0)
|
||||
ruby-prof (1.0.0)
|
||||
ruby-progressbar (1.10.1)
|
||||
ruby-saml (1.7.2)
|
||||
nokogiri (>= 1.5.10)
|
||||
ruby_parser (3.13.1)
|
||||
|
@ -895,7 +902,7 @@ GEM
|
|||
rubyntlm (0.6.2)
|
||||
rubypants (0.2.0)
|
||||
rubyzip (1.2.2)
|
||||
rugged (0.28.1)
|
||||
rugged (0.28.3.1)
|
||||
safe_yaml (1.0.4)
|
||||
sanitize (4.6.6)
|
||||
crass (~> 1.0.2)
|
||||
|
@ -931,8 +938,6 @@ GEM
|
|||
faraday (>= 0.7.6, < 1.0)
|
||||
settingslogic (2.0.9)
|
||||
sexp_processor (4.12.0)
|
||||
sham_rack (1.3.6)
|
||||
rack
|
||||
shoulda-matchers (4.0.1)
|
||||
activesupport (>= 4.2.0)
|
||||
sidekiq (5.2.7)
|
||||
|
@ -954,6 +959,7 @@ GEM
|
|||
json (>= 1.8, < 3)
|
||||
simplecov-html (~> 0.10.0)
|
||||
simplecov-html (0.10.2)
|
||||
sixarm_ruby_unaccent (1.2.0)
|
||||
slack-notifier (1.5.1)
|
||||
snowplow-tracker (0.6.1)
|
||||
contracts (~> 0.7, <= 0.11)
|
||||
|
@ -986,6 +992,8 @@ GEM
|
|||
ffi
|
||||
sysexits (1.2.0)
|
||||
temple (0.8.1)
|
||||
terminal-table (1.8.0)
|
||||
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||
test-prof (0.2.5)
|
||||
text (1.3.1)
|
||||
thin (1.7.2)
|
||||
|
@ -1002,7 +1010,6 @@ GEM
|
|||
parslet (~> 1.8.0)
|
||||
toml-rb (1.0.0)
|
||||
citrus (~> 3.0, > 3.0)
|
||||
tomlrb (1.2.8)
|
||||
truncato (0.7.11)
|
||||
htmlentities (~> 4.3.1)
|
||||
nokogiri (>= 1.7.0, <= 2.0)
|
||||
|
@ -1017,6 +1024,7 @@ GEM
|
|||
unf_ext
|
||||
unf_ext (0.0.7.5)
|
||||
unicode-display_width (1.6.0)
|
||||
unicode_utils (1.4.0)
|
||||
unicorn (5.4.1)
|
||||
kgio (~> 2.6)
|
||||
raindrops (~> 0.7)
|
||||
|
@ -1024,6 +1032,8 @@ GEM
|
|||
get_process_mem (~> 0)
|
||||
unicorn (>= 4, < 6)
|
||||
uniform_notifier (1.10.0)
|
||||
unleash (0.1.5)
|
||||
murmurhash3 (~> 0.1.6)
|
||||
unparser (0.4.5)
|
||||
abstract_type (~> 0.0.7)
|
||||
adamantium (~> 0.2.0)
|
||||
|
@ -1079,7 +1089,6 @@ DEPENDENCIES
|
|||
ace-rails-ap (~> 4.1.0)
|
||||
acme-client (~> 2.0.2)
|
||||
activerecord-explain-analyze (~> 0.1)
|
||||
activerecord_sane_schema_dumper (= 1.0)
|
||||
acts-as-taggable-on (~> 6.0)
|
||||
addressable (~> 2.5.2)
|
||||
akismet (~> 2.0)
|
||||
|
@ -1088,6 +1097,7 @@ DEPENDENCIES
|
|||
asciidoctor (~> 2.0.10)
|
||||
asciidoctor-include-ext (~> 0.3.1)
|
||||
asciidoctor-plantuml (= 0.0.9)
|
||||
atlassian-jwt (~> 0.2.0)
|
||||
attr_encrypted (~> 3.1.0)
|
||||
awesome_print
|
||||
aws-sdk
|
||||
|
@ -1110,11 +1120,12 @@ DEPENDENCIES
|
|||
carrierwave (~> 1.3)
|
||||
charlock_holmes (~> 0.7.5)
|
||||
chronic (~> 0.10.2)
|
||||
chronic_duration (~> 0.10.6)
|
||||
commonmarker (~> 0.17)
|
||||
concurrent-ruby (~> 1.1)
|
||||
connection_pool (~> 2.0)
|
||||
countries (~> 3.0)
|
||||
creole (~> 0.5.0)
|
||||
danger (~> 6.0)
|
||||
database_cleaner (~> 1.7.0)
|
||||
deckar01-task_list (= 2.2.0)
|
||||
default_value_for (~> 3.2.0)
|
||||
|
@ -1145,7 +1156,7 @@ DEPENDENCIES
|
|||
fog-aliyun (~> 0.3)
|
||||
fog-aws (~> 3.5)
|
||||
fog-core (= 2.1.0)
|
||||
fog-google (~> 1.8)
|
||||
fog-google (~> 1.9)
|
||||
fog-local (~> 0.6)
|
||||
fog-openstack (~> 1.0)
|
||||
fog-rackspace (~> 0.1.1)
|
||||
|
@ -1157,13 +1168,15 @@ DEPENDENCIES
|
|||
gettext (~> 3.2.2)
|
||||
gettext_i18n_rails (~> 1.8.0)
|
||||
gettext_i18n_rails_js (~> 1.3)
|
||||
gitaly-proto (~> 1.37.0)
|
||||
gitaly (~> 1.58.0)
|
||||
github-markup (~> 1.7.0)
|
||||
gitlab-labkit (~> 0.3.0)
|
||||
gitlab-labkit (~> 0.5)
|
||||
gitlab-license (~> 1.0)
|
||||
gitlab-markup (~> 1.7.0)
|
||||
gitlab-sidekiq-fetcher (~> 0.4.0)
|
||||
gitlab-peek (~> 0.0.1)
|
||||
gitlab-sidekiq-fetcher (= 0.5.2)
|
||||
gitlab-styles (~> 2.7)
|
||||
gitlab_chronic_duration (~> 0.10.6.1)
|
||||
gitlab_omniauth-ldap (~> 2.1.1)
|
||||
gon (~> 6.2)
|
||||
google-api-client (~> 0.23)
|
||||
|
@ -1174,7 +1187,7 @@ DEPENDENCIES
|
|||
grape-path-helpers (~> 1.1)
|
||||
grape_logging (~> 1.7)
|
||||
graphiql-rails (~> 1.4.10)
|
||||
graphql (~> 1.8.0)
|
||||
graphql (~> 1.9.11)
|
||||
graphql-docs (~> 1.6.0)
|
||||
grpc (~> 1.19.0)
|
||||
gssapi
|
||||
|
@ -1189,32 +1202,31 @@ DEPENDENCIES
|
|||
httparty (~> 0.16.4)
|
||||
icalendar
|
||||
influxdb (~> 0.2)
|
||||
jira-ruby (~> 1.4)
|
||||
invisible_captcha (~> 0.12.1)
|
||||
jira-ruby (~> 1.7)
|
||||
js_regex (~> 3.1)
|
||||
json-schema (~> 2.8.0)
|
||||
jwt (~> 2.1.0)
|
||||
kaminari (~> 1.0)
|
||||
knapsack (~> 1.17)
|
||||
kubeclient (~> 4.2.2)
|
||||
kubeclient (~> 4.4.0)
|
||||
letter_opener_web (~> 1.3.4)
|
||||
license_finder (~> 5.4)
|
||||
licensee (~> 8.9)
|
||||
lograge (~> 0.5)
|
||||
loofah (~> 2.2)
|
||||
mail_room (~> 0.9.1)
|
||||
mdl (~> 0.5.0)
|
||||
memory_profiler (~> 0.9)
|
||||
method_source (~> 0.8)
|
||||
mimemagic (~> 0.3.2)
|
||||
mini_magick
|
||||
minitest (~> 5.11.0)
|
||||
mysql2 (~> 0.4.10)
|
||||
nakayoshi_fork (~> 0.0.4)
|
||||
net-dns (~> 0.9.0)
|
||||
net-ldap
|
||||
net-ntp
|
||||
net-ssh (~> 5.2)
|
||||
nokogiri (~> 1.10.3)
|
||||
nokogiri (~> 1.10.4)
|
||||
oauth2 (~> 1.4)
|
||||
octokit (~> 4.9)
|
||||
omniauth (~> 1.8)
|
||||
|
@ -1236,15 +1248,9 @@ DEPENDENCIES
|
|||
omniauth_crowd (~> 2.2.0)
|
||||
omniauth_openid_connect (~> 0.3.1)
|
||||
org-ruby (~> 0.9.12)
|
||||
peek (~> 1.0.1)
|
||||
peek-gc (~> 0.0.2)
|
||||
peek-mysql2 (~> 1.2.0)
|
||||
peek-pg (~> 1.3.0)
|
||||
peek-rblineprof (~> 0.2.0)
|
||||
peek-redis (~> 1.2.0)
|
||||
pg (~> 1.1)
|
||||
premailer-rails (~> 1.9.7)
|
||||
prometheus-client-mmap (~> 0.9.8)
|
||||
prometheus-client-mmap (~> 0.9.10)
|
||||
pry-byebug (~> 3.5.1)
|
||||
pry-rails (~> 0.3.4)
|
||||
puma (~> 3.12)
|
||||
|
@ -1265,12 +1271,12 @@ DEPENDENCIES
|
|||
rdoc (~> 6.0)
|
||||
re2 (~> 1.1.1)
|
||||
recaptcha (~> 4.11)
|
||||
redis (~> 3.2)
|
||||
redis (~> 4.0)
|
||||
redis-namespace (~> 1.6.0)
|
||||
redis-rails (~> 5.0.2)
|
||||
request_store (~> 1.3)
|
||||
responders (~> 2.0)
|
||||
rouge (~> 3.5)
|
||||
rouge (~> 3.7)
|
||||
rqrcode-rails3 (~> 0.1.7)
|
||||
rspec-parameterized
|
||||
rspec-rails (~> 3.8.0)
|
||||
|
@ -1282,7 +1288,7 @@ DEPENDENCIES
|
|||
rubocop-performance (~> 1.1.0)
|
||||
rubocop-rspec (~> 1.22.1)
|
||||
ruby-fogbugz (~> 0.2.1)
|
||||
ruby-prof (~> 0.17.0)
|
||||
ruby-prof (~> 1.0.0)
|
||||
ruby-progressbar
|
||||
ruby_parser (~> 3.8)
|
||||
rubyzip (~> 1.2.2)
|
||||
|
@ -1294,7 +1300,6 @@ DEPENDENCIES
|
|||
selenium-webdriver (~> 3.141)
|
||||
sentry-raven (~> 2.9)
|
||||
settingslogic (~> 2.0.9)
|
||||
sham_rack (~> 1.3.6)
|
||||
shoulda-matchers (~> 4.0.1)
|
||||
sidekiq (~> 5.2.7)
|
||||
sidekiq-cron (~> 1.0)
|
||||
|
@ -1319,9 +1324,9 @@ DEPENDENCIES
|
|||
unf (~> 0.1.4)
|
||||
unicorn (~> 5.4.1)
|
||||
unicorn-worker-killer (~> 0.4.4)
|
||||
unleash (~> 0.1.5)
|
||||
validates_hostname (~> 1.0.6)
|
||||
version_sorter (~> 2.2.4)
|
||||
virtus (~> 1.0.1)
|
||||
vmstat (~> 2.3.0)
|
||||
webmock (~> 3.5.1)
|
||||
webpack-rails (~> 0.9.10)
|
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,5 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#! nix-shell -i python3 -p bundix common-updater-scripts nix nix-prefetch-git python3 python3Packages.requests python3Packages.lxml python3Packages.click python3Packages.click-log vgo2nix
|
||||
#! nix-shell -i python3 -p bundix common-updater-scripts nix nix-prefetch-git python3 python3Packages.requests python3Packages.lxml python3Packages.click python3Packages.click-log vgo2nix yarn2nix-moretea.yarn2nix
|
||||
|
||||
import click
|
||||
import click_log
|
||||
|
@ -20,7 +20,7 @@ logger = logging.getLogger(__name__)
|
|||
|
||||
class GitLabRepo:
|
||||
version_regex = re.compile(r"^v\d+\.\d+\.\d+(\-rc\d+)?(\-ee)?")
|
||||
def __init__(self, owner: str, repo: str):
|
||||
def __init__(self, owner: str = 'gitlab-org', repo: str = 'gitlab'):
|
||||
self.owner = owner
|
||||
self.repo = repo
|
||||
|
||||
|
@ -46,24 +46,6 @@ class GitLabRepo:
|
|||
j = json.loads(out)
|
||||
return j['sha256']
|
||||
|
||||
def get_deb_url(self, flavour: str, version: str, arch: str = 'amd64') -> str:
|
||||
"""
|
||||
gitlab builds debian packages, which we currently need as we don't build the frontend on our own
|
||||
this returns the url of a given flavour, version and arch
|
||||
:param flavour: 'ce' or 'ee'
|
||||
:param version: a version, without 'v' prefix and '-ee' suffix
|
||||
:param arch: amd64
|
||||
:return: url of the debian package
|
||||
"""
|
||||
if self.owner != "gitlab-org" or self.repo not in ['gitlab-ce', 'gitlab-ee']:
|
||||
raise Exception(f"don't know how to get deb_url for {self.url}")
|
||||
return f"https://packages.gitlab.com/gitlab/gitlab-{flavour}/packages" + \
|
||||
f"/debian/stretch/gitlab-{flavour}_{version}-{flavour}.0_{arch}.deb/download.deb"
|
||||
|
||||
def get_deb_hash(self, flavour: str, version: str) -> str:
|
||||
out = subprocess.check_output(['nix-prefetch-url', self.get_deb_url(flavour, version)])
|
||||
return out.decode('utf-8').strip()
|
||||
|
||||
@staticmethod
|
||||
def rev2version(tag: str) -> str:
|
||||
"""
|
||||
|
@ -86,46 +68,19 @@ class GitLabRepo:
|
|||
"""
|
||||
return requests.get(self.url + f"/raw/{rev}/{filepath}").text
|
||||
|
||||
def get_data(self, rev, flavour):
|
||||
def get_data(self, rev):
|
||||
version = self.rev2version(rev)
|
||||
|
||||
passthru = {v: self.get_file(v, rev).strip() for v in ['GITALY_SERVER_VERSION', 'GITLAB_PAGES_VERSION',
|
||||
'GITLAB_SHELL_VERSION', 'GITLAB_WORKHORSE_VERSION']}
|
||||
return dict(version=self.rev2version(rev),
|
||||
repo_hash=self.get_git_hash(rev),
|
||||
deb_hash=self.get_deb_hash(flavour, version),
|
||||
deb_url=self.get_deb_url(flavour, version),
|
||||
owner=self.owner,
|
||||
repo=self.repo,
|
||||
rev=rev,
|
||||
passthru=passthru)
|
||||
|
||||
|
||||
def _flavour2gitlabrepo(flavour: str):
|
||||
if flavour not in ['ce', 'ee']:
|
||||
raise Exception(f"unknown gitlab flavour: {flavour}, needs to be ce or ee")
|
||||
|
||||
owner = 'gitlab-org'
|
||||
repo = 'gitlab-' + flavour
|
||||
|
||||
return GitLabRepo(owner, repo)
|
||||
|
||||
|
||||
def _update_data_json(filename: str, repo: GitLabRepo, rev: str, flavour: str):
|
||||
flavour_data = repo.get_data(rev, flavour)
|
||||
|
||||
if not os.path.exists(filename):
|
||||
with open(filename, 'w') as f:
|
||||
json.dump({flavour: flavour_data}, f, indent=2)
|
||||
else:
|
||||
with open(filename, 'r+') as f:
|
||||
data = json.load(f)
|
||||
data[flavour] = flavour_data
|
||||
f.seek(0)
|
||||
f.truncate()
|
||||
json.dump(data, f, indent=2)
|
||||
|
||||
|
||||
def _get_data_json():
|
||||
data_file_path = pathlib.Path(__file__).parent / 'data.json'
|
||||
with open(data_file_path, 'r') as f:
|
||||
|
@ -146,100 +101,139 @@ def cli():
|
|||
|
||||
@cli.command('update-data')
|
||||
@click.option('--rev', default='latest', help='The rev to use, \'latest\' points to the latest (stable) tag')
|
||||
@click.argument('flavour')
|
||||
def update_data(rev: str, flavour: str):
|
||||
"""Update data.nix for a selected flavour"""
|
||||
r = _flavour2gitlabrepo(flavour)
|
||||
def update_data(rev: str):
|
||||
"""Update data.nix"""
|
||||
repo = GitLabRepo()
|
||||
|
||||
if rev == 'latest':
|
||||
# filter out pre and re releases
|
||||
rev = next(filter(lambda x: not ('rc' in x or x.endswith('pre')), r.tags))
|
||||
rev = next(filter(lambda x: not ('rc' in x or x.endswith('pre')), repo.tags))
|
||||
logger.debug(f"Using rev {rev}")
|
||||
|
||||
version = r.rev2version(rev)
|
||||
version = repo.rev2version(rev)
|
||||
logger.debug(f"Using version {version}")
|
||||
|
||||
data_file_path = pathlib.Path(__file__).parent / 'data.json'
|
||||
|
||||
_update_data_json(filename=data_file_path.as_posix(),
|
||||
repo=r,
|
||||
rev=rev,
|
||||
flavour=flavour)
|
||||
data = repo.get_data(rev)
|
||||
|
||||
with open(data_file_path.as_posix(), 'w') as f:
|
||||
json.dump(data, f, indent=2)
|
||||
|
||||
|
||||
@cli.command('update-rubyenv')
|
||||
@click.argument('flavour')
|
||||
def update_rubyenv(flavour):
|
||||
"""Update rubyEnv-${flavour}"""
|
||||
if flavour not in ['ce', 'ee']:
|
||||
raise Exception(f"unknown gitlab flavour: {flavour}, needs to be ce or ee")
|
||||
|
||||
r = _flavour2gitlabrepo(flavour)
|
||||
rubyenv_dir = pathlib.Path(__file__).parent / f"rubyEnv-{flavour}"
|
||||
def update_rubyenv():
|
||||
"""Update rubyEnv"""
|
||||
repo = GitLabRepo()
|
||||
rubyenv_dir = pathlib.Path(__file__).parent / f"rubyEnv"
|
||||
|
||||
# load rev from data.json
|
||||
data = _get_data_json()
|
||||
rev = data[flavour]['rev']
|
||||
rev = data['rev']
|
||||
|
||||
for fn in ['Gemfile.lock', 'Gemfile']:
|
||||
with open(rubyenv_dir / fn, 'w') as f:
|
||||
f.write(r.get_file(fn, rev))
|
||||
f.write(repo.get_file(fn, rev))
|
||||
|
||||
subprocess.check_output(['bundix'], cwd=rubyenv_dir)
|
||||
|
||||
|
||||
@cli.command('update-yarnpkgs')
|
||||
def update_yarnpkgs():
|
||||
"""Update yarnPkgs"""
|
||||
|
||||
repo = GitLabRepo()
|
||||
yarnpkgs_dir = pathlib.Path(__file__).parent
|
||||
|
||||
# load rev from data.json
|
||||
data = _get_data_json()
|
||||
rev = data['rev']
|
||||
|
||||
with open(yarnpkgs_dir / 'yarn.lock', 'w') as f:
|
||||
f.write(repo.get_file('yarn.lock', rev))
|
||||
|
||||
with open(yarnpkgs_dir / 'yarnPkgs.nix', 'w') as f:
|
||||
subprocess.run(['yarn2nix'], cwd=yarnpkgs_dir, check=True, stdout=f)
|
||||
|
||||
os.unlink(yarnpkgs_dir / 'yarn.lock')
|
||||
|
||||
|
||||
@cli.command('update-gitaly')
|
||||
def update_gitaly():
|
||||
"""Update gitaly"""
|
||||
data = _get_data_json()
|
||||
gitaly_server_version = data['ce']['passthru']['GITALY_SERVER_VERSION']
|
||||
r = GitLabRepo('gitlab-org', 'gitaly')
|
||||
gitaly_server_version = data['passthru']['GITALY_SERVER_VERSION']
|
||||
repo = GitLabRepo(repo='gitaly')
|
||||
gitaly_dir = pathlib.Path(__file__).parent / 'gitaly'
|
||||
|
||||
for fn in ['Gemfile.lock', 'Gemfile']:
|
||||
with open(gitaly_dir / fn, 'w') as f:
|
||||
f.write(r.get_file(f"ruby/{fn}", f"v{gitaly_server_version}"))
|
||||
f.write(repo.get_file(f"ruby/{fn}", f"v{gitaly_server_version}"))
|
||||
|
||||
for fn in ['go.mod', 'go.sum']:
|
||||
with open(gitaly_dir / fn, 'w') as f:
|
||||
f.write(r.get_file(fn, f"v{gitaly_server_version}"))
|
||||
f.write(repo.get_file(fn, f"v{gitaly_server_version}"))
|
||||
|
||||
subprocess.check_output(['bundix'], cwd=gitaly_dir)
|
||||
subprocess.check_output(['vgo2nix'], cwd=gitaly_dir)
|
||||
|
||||
for fn in ['go.mod', 'go.sum']:
|
||||
os.unlink(gitaly_dir / fn)
|
||||
# currently broken, as `gitaly.meta.position` returns
|
||||
# pkgs/development/go-modules/generic/default.nix
|
||||
# so update-source-version doesn't know where to update hashes
|
||||
# _call_update_source_version('gitaly', gitaly_server_version)
|
||||
gitaly_hash = r.get_git_hash(f"v{gitaly_server_version}")
|
||||
click.echo(f"Please update gitaly/default.nix to version {gitaly_server_version} and hash {gitaly_hash}")
|
||||
|
||||
_call_update_source_version('gitaly', gitaly_server_version)
|
||||
|
||||
|
||||
@cli.command('update-gitlab-shell')
|
||||
def update_gitlab_shell():
|
||||
"""Update gitlab-shell"""
|
||||
data = _get_data_json()
|
||||
gitlab_shell_version = data['ce']['passthru']['GITLAB_SHELL_VERSION']
|
||||
gitlab_shell_version = data['passthru']['GITLAB_SHELL_VERSION']
|
||||
_call_update_source_version('gitlab-shell', gitlab_shell_version)
|
||||
|
||||
repo = GitLabRepo(repo='gitlab-shell')
|
||||
gitlab_shell_dir = pathlib.Path(__file__).parent / 'gitlab-shell'
|
||||
|
||||
for fn in ['Gemfile.lock', 'Gemfile']:
|
||||
with open(gitlab_shell_dir / fn, 'w') as f:
|
||||
f.write(repo.get_file(fn, f"v{gitlab_shell_version}"))
|
||||
|
||||
for fn in ['go.mod', 'go.sum']:
|
||||
with open(gitlab_shell_dir / fn, 'w') as f:
|
||||
f.write(repo.get_file(f"go/{fn}", f"v{gitlab_shell_version}"))
|
||||
|
||||
subprocess.check_output(['bundix'], cwd=gitlab_shell_dir)
|
||||
subprocess.check_output(['vgo2nix'], cwd=gitlab_shell_dir)
|
||||
|
||||
for fn in ['go.mod', 'go.sum']:
|
||||
os.unlink(gitlab_shell_dir / fn)
|
||||
|
||||
|
||||
@cli.command('update-gitlab-workhorse')
|
||||
def update_gitlab_workhorse():
|
||||
"""Update gitlab-shell"""
|
||||
"""Update gitlab-workhorse"""
|
||||
data = _get_data_json()
|
||||
gitlab_workhorse_version = data['ce']['passthru']['GITLAB_WORKHORSE_VERSION']
|
||||
gitlab_workhorse_version = data['passthru']['GITLAB_WORKHORSE_VERSION']
|
||||
_call_update_source_version('gitlab-workhorse', gitlab_workhorse_version)
|
||||
|
||||
repo = GitLabRepo('gitlab-org', 'gitlab-workhorse')
|
||||
gitlab_workhorse_dir = pathlib.Path(__file__).parent / 'gitlab-workhorse'
|
||||
|
||||
for fn in ['go.mod', 'go.sum']:
|
||||
with open(gitlab_workhorse_dir / fn, 'w') as f:
|
||||
f.write(repo.get_file(fn, f"v{gitlab_workhorse_version}"))
|
||||
|
||||
subprocess.check_output(['vgo2nix'], cwd=gitlab_workhorse_dir)
|
||||
|
||||
for fn in ['go.mod', 'go.sum']:
|
||||
os.unlink(gitlab_workhorse_dir / fn)
|
||||
|
||||
@cli.command('update-all')
|
||||
@click.pass_context
|
||||
def update_all(ctx):
|
||||
"""Update gitlab ce and ee data.nix and rubyenvs to the latest stable release"""
|
||||
for flavour in ['ce', 'ee']:
|
||||
ctx.invoke(update_data, rev='latest', flavour=flavour)
|
||||
ctx.invoke(update_rubyenv, flavour=flavour)
|
||||
"""Update all gitlab components to the latest stable release"""
|
||||
ctx.invoke(update_data, rev='latest')
|
||||
ctx.invoke(update_rubyenv)
|
||||
ctx.invoke(update_yarnpkgs)
|
||||
ctx.invoke(update_gitaly)
|
||||
ctx.invoke(update_gitlab_shell)
|
||||
ctx.invoke(update_gitlab_workhorse)
|
||||
|
|
14221
pkgs/applications/version-management/gitlab/yarnPkgs.nix
Normal file
14221
pkgs/applications/version-management/gitlab/yarnPkgs.nix
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue