This file is indexed.

/usr/share/doc/libdrmaa1.0-ruby/examples/ruby/array.rb is in libdrmaa1.0-ruby 8.1.9+dfsg-4+deb9u2.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/usr/bin/ruby

#########################################################################
#
#  The Contents of this file are made available subject to the terms of
#  the Sun Industry Standards Source License Version 1.2
#
#  Sun Microsystems Inc., March, 2006
#
#
#  Sun Industry Standards Source License Version 1.2
#  =================================================
#  The contents of this file are subject to the Sun Industry Standards
#  Source License Version 1.2 (the "License"); You may not use this file
#  except in compliance with the License. You may obtain a copy of the
#  License at http://gridengine.sunsource.net/Gridengine_SISSL_license.html
#
#  Software provided under this License is provided on an "AS IS" basis,
#  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
#  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
#  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
#  See the License for the specific provisions governing your rights and
#  obligations concerning the Software.
#
#   The Initial Developer of the Original Code is: Sun Microsystems, Inc.
#
#   Copyright: 2006 by Sun Microsystems, Inc.
#
#   All Rights Reserved.
#
#########################################################################

require 'drmaa'

class Sleeper < DRMAA::JobTemplate
	def initialize
		super
		self.command = "/bin/sleep"
		self.arg     = ["1"]
		self.stdout  = ":/dev/null"
		self.join    = true
	end
end

# Two array jobs are submitted. The second array task remains in
# hold until the predecessor task was run. Demonstrate possible 
# use of hold/release.

NTASKS = 30
session = DRMAA::Session.new

jt = Sleeper.new
pre = session.run_bulk(jt, 1, NTASKS, 1)
suc = session.run_bulk(jt, 1, NTASKS, 1)

h = Hash.new
for i in 0 .. NTASKS-1 do
	h[pre[i]] = suc[i] 
end

session.wait_each{ |info|
	job = info.job
	if h.has_key?(job) 
		session.release(h[job])
	end

	if info.wifexited?
		puts job + " returned with " + info.wexitstatus.to_s
		# info.rusage.each { |u| puts "usage " + u }
	elsif info.wifaborted?
		puts job + " aborted"
	elsif info.wifsignaled?
		puts job + " died from " + info.wtermsig
	end
}

exit 0