arvados-cli 0.1.20140411091748 → 0.1.20140411125904
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/crunch-job +25 -24
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 430e3b338861a82a044d330ea865cbc28dfa765c
|
4
|
+
data.tar.gz: 75b0bbb95586d7a5f3aba520f9eb11ebb47b07b9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6e8a5ecc6a13ae9976392f8e9deea6bf248c6f02df7b05dfb7d05b8e135db3d7c0b845de0975fa4f957bc5cf9e47c1f51fd9c1e5cee2205f2f3c39dde6903758
|
7
|
+
data.tar.gz: 57f2939115c38df100c30a8a7029acc21a028ced07238501eeb43b292cd8fb6b00b97b3be1086aca525c3afe9ee4c241b9ef6d3db7c55d0324d4d70518e29e45
|
data/bin/crunch-job
CHANGED
@@ -195,7 +195,7 @@ if (!$have_slurm)
|
|
195
195
|
}
|
196
196
|
if (exists $ENV{SLURM_NODELIST})
|
197
197
|
{
|
198
|
-
push @sinfo, `sinfo -h --format='%c %N' --nodes
|
198
|
+
push @sinfo, `sinfo -h --format='%c %N' --nodes=\Q$ENV{SLURM_NODELIST}\E`;
|
199
199
|
}
|
200
200
|
foreach (@sinfo)
|
201
201
|
{
|
@@ -400,24 +400,33 @@ else
|
|
400
400
|
my $commit;
|
401
401
|
my $git_archive;
|
402
402
|
my $treeish = $Job->{'script_version'};
|
403
|
-
my $repo = $git_dir || $ENV{'CRUNCH_DEFAULT_GIT_DIR'};
|
404
|
-
# Todo: let script_version specify repository instead of expecting
|
405
|
-
# parent process to figure it out.
|
406
|
-
$ENV{"CRUNCH_SRC_URL"} = $repo;
|
407
403
|
|
408
|
-
#
|
404
|
+
# If we're running under crunch-dispatch, it will have pulled the
|
405
|
+
# appropriate source tree into its own repository, and given us that
|
406
|
+
# repo's path as $git_dir. If we're running a "local" job, and a
|
407
|
+
# script_version was specified, it's up to the user to provide the
|
408
|
+
# full path to a local repository in Job->{repository}.
|
409
|
+
#
|
410
|
+
# TODO: Accept URLs too, not just local paths. Use git-ls-remote and
|
411
|
+
# git-archive --remote where appropriate.
|
412
|
+
#
|
413
|
+
# TODO: Accept a locally-hosted Arvados repository by name or
|
414
|
+
# UUID. Use arvados.v1.repositories.list or .get to figure out the
|
415
|
+
# appropriate fetch-url.
|
416
|
+
my $repo = $git_dir || $ENV{'CRUNCH_DEFAULT_GIT_DIR'} || $Job->{'repository'};
|
417
|
+
|
418
|
+
$ENV{"CRUNCH_SRC_URL"} = $repo;
|
409
419
|
|
410
|
-
if (
|
411
|
-
|
412
|
-
|
413
|
-
|
420
|
+
if (-d "$repo/.git") {
|
421
|
+
# We were given a working directory, but we are only interested in
|
422
|
+
# the index.
|
423
|
+
$repo = "$repo/.git";
|
414
424
|
}
|
415
|
-
`cd $ENV{CRUNCH_SRC} && git remote set-url origin \"\$CRUNCH_SRC_URL\" && git fetch -q --tags origin`;
|
416
425
|
|
417
426
|
# If this looks like a subversion r#, look for it in git-svn commit messages
|
418
427
|
|
419
428
|
if ($treeish =~ m{^\d{1,4}$}) {
|
420
|
-
my $gitlog = `
|
429
|
+
my $gitlog = `git --git-dir=\Q$repo\E log --pretty="format:%H" --grep="git-svn-id:.*\@"\Q$treeish\E" " master`;
|
421
430
|
chomp $gitlog;
|
422
431
|
if ($gitlog =~ /^[a-f0-9]{40}$/) {
|
423
432
|
$commit = $gitlog;
|
@@ -428,15 +437,7 @@ else
|
|
428
437
|
# If that didn't work, try asking git to look it up as a tree-ish.
|
429
438
|
|
430
439
|
if (!defined $commit) {
|
431
|
-
|
432
|
-
my $cooked_treeish = $treeish;
|
433
|
-
if ($treeish !~ m{^[0-9a-f]{5,}$}) {
|
434
|
-
# Looks like a git branch name -- make sure git knows it's
|
435
|
-
# relative to the remote repo
|
436
|
-
$cooked_treeish = "origin/$treeish";
|
437
|
-
}
|
438
|
-
|
439
|
-
my $found = `cd $ENV{CRUNCH_SRC} && git rev-list -1 $cooked_treeish`;
|
440
|
+
my $found = `git --git-dir=\Q$repo\E rev-list -1 ''\Q$treeish\E`;
|
440
441
|
chomp $found;
|
441
442
|
if ($found =~ /^[0-9a-f]{40}$/s) {
|
442
443
|
$commit = $found;
|
@@ -461,7 +462,7 @@ else
|
|
461
462
|
$ENV{"CRUNCH_SRC_COMMIT"} = $commit;
|
462
463
|
@execargs = ("sh", "-c",
|
463
464
|
"mkdir -p $ENV{CRUNCH_INSTALL} && cd $ENV{CRUNCH_TMP} && perl -");
|
464
|
-
$git_archive = `
|
465
|
+
$git_archive = `git --git-dir=\Q$repo\E archive ''\Q$commit\E`;
|
465
466
|
}
|
466
467
|
else {
|
467
468
|
croak ("could not figure out commit id for $treeish");
|
@@ -758,7 +759,7 @@ if ($job_has_uuid) {
|
|
758
759
|
if ($Job->{'output'})
|
759
760
|
{
|
760
761
|
eval {
|
761
|
-
my $manifest_text = `arv keep get \Q$Job->{'output'}\E`;
|
762
|
+
my $manifest_text = `arv keep get ''\Q$Job->{'output'}\E`;
|
762
763
|
$arv->{'collections'}->{'create'}->execute('collection' => {
|
763
764
|
'uuid' => $Job->{'output'},
|
764
765
|
'manifest_text' => $manifest_text,
|
@@ -1235,7 +1236,7 @@ sub save_meta
|
|
1235
1236
|
return if $justcheckpoint; # checkpointing is not relevant post-Warehouse.pm
|
1236
1237
|
|
1237
1238
|
$local_logfile->flush;
|
1238
|
-
my $cmd = "arv keep put --filename \Q$keep_logfile\E "
|
1239
|
+
my $cmd = "arv keep put --filename ''\Q$keep_logfile\E "
|
1239
1240
|
. quotemeta($local_logfile->filename);
|
1240
1241
|
my $loglocator = `$cmd`;
|
1241
1242
|
die "system $cmd failed: $?" if $?;
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arvados-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.20140411125904
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arvados Authors
|
@@ -146,7 +146,7 @@ dependencies:
|
|
146
146
|
- - ~>
|
147
147
|
- !ruby/object:Gem::Version
|
148
148
|
version: '0.8'
|
149
|
-
description: This is the Arvados SDK CLI gem, git revision
|
149
|
+
description: This is the Arvados SDK CLI gem, git revision 45ff1f04cf0a562b870e18ca13b02d914db6bcb3
|
150
150
|
email: gem-dev@curoverse.com
|
151
151
|
executables:
|
152
152
|
- arv
|