ATLAS Offline Software
integration_gridpack_creator.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
2 
3 from AthenaCommon import Logging
4 from ...decorators import timed
5 import glob
6 import os
7 import subprocess
8 
9 
10 logger = Logging.logging.getLogger("PowhegControl")
11 
12 
13 @timed("integration gridpack creator")
15  """! Create tarball containing integration grids for future use.
16 
17  Tar up integration grids
18 
19  @author James Robinson <james.robinson@cern.ch>
20  """
21  output_tarball_name = "integration_grids.tar.gz"
22  file_names = sum([glob.glob(_f) for _f in process.integration_file_names], [])
23 
24 # removing duplicates
25  file_names = list(dict.fromkeys(file_names))
26 
27  if file_names:
28  logger.info("Tar-ing {} integration grids into {}".format(len(file_names), output_tarball_name))
29  for line in subprocess.check_output(["tar", "cvzf", output_tarball_name] + file_names, stderr=subprocess.STDOUT).splitlines():
30  logger.info(line)
31  for file_name in file_names:
32  try:
33  os.remove(file_name)
34  except OSError:
35  logger.warning("... could not clean up {}".format(file_name))
python.decorators.timed.timed
def timed(name)
Decorator to output function execution time.
Definition: timed.py:12
vtune_athena.format
format
Definition: vtune_athena.py:14
convertTimingResiduals.sum
sum
Definition: convertTimingResiduals.py:55
histSizes.list
def list(name, path='/')
Definition: histSizes.py:38
python.algorithms.postprocessors.integration_gridpack_creator.integration_gridpack_creator
def integration_gridpack_creator(process)
Create tarball containing integration grids for future use.
Definition: integration_gridpack_creator.py:14