Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: adding to local cfg platform and CVMFS_locations #239

Merged
merged 3 commits into from
Jun 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 2 additions & 31 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,39 +11,10 @@ Repository structure
Due to the fact that we support only the production and the development versions,
for now only 2 branchs are present: *master*, and *devel*.

* *master* is the stable branch. Production tags are created starting from this branch.
* *devel* is the development branch. Tags created starting from this branch are subject to a certification process.

The following diagram highlights the interactions between the branches and the merging and tagging strategy:
![LHCbDIRAC branches](https://docs.google.com/drawings/d/14UPBPGW2R8d7JBO9eHWw2tyD3ApEuUBmlDEFicoBs1U/pub?w=1011&h=726)

For now, actually there are no tags created yet, so we've always used the HEAD of the branches.

Repositories
============

Developers should have 2 remote repositories (which is the typical GitHub workflow):

* *origin* : cloned from your private fork done on GitHub
* *upstream* : add it via git remote add upstream and pointing to the blessed repository: [email protected]:DIRACGrid/Pilot.git (or https://github.com/DIRACGrid/Pilot.git using https protocol)
* *master* is the stable branch.
* *devel* is the development branch.

Issue Tracking
==============

Issue tracking for the project is [here in github](https://github.com/DIRACGrid/Pilot/issues).


Code quality
============

The contributions are subject to reviews.

Pylint is run regularly on the source code. The .pylintrc file defines the expected coding rules and peculiarities.


Testing
======

Unit tests are provided within the source code. Integration, regression and system tests are instead in the tests directory.


141 changes: 0 additions & 141 deletions Jenkinsfile

This file was deleted.

6 changes: 6 additions & 0 deletions Pilot/pilotCommands.py
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,7 @@ def _localInstallDIRAC(self):
for modules in self.pp.modules.split(","):
branch = project = ""
elements = modules.split(":::")
url = ""
if len(elements) == 3:
# e.g.: https://github.com/$DIRAC_test_repo/DIRAC.git:::DIRAC:::$DIRAC_test_branch
url, project, branch = elements
Expand Down Expand Up @@ -516,6 +517,8 @@ def _getBasicsCFG(self):
if self.pp.userDN:
self.cfg.append('-o /AgentJobRequirements/OwnerDN="%s"' % self.pp.userDN)
self.cfg.append("-o /LocalSite/ReleaseVersion=%s" % self.releaseVersion)
# add the installation locations
self.cfg.append("-o /LocalSite/CVMFS_locations=%s" % ",".join(self.pp.CVMFS_locations))

if self.pp.wnVO:
self.cfg.append('-o "/Resources/Computing/CEDefaults/VirtualOrganization=%s"' % self.pp.wnVO)
Expand Down Expand Up @@ -846,6 +849,9 @@ def execute(self):
localArchitecture = localArchitecture.strip().split("\n")[-1].strip()
cfg.append('-S "%s"' % self.pp.setup)
cfg.append("-o /LocalSite/Architecture=%s" % localArchitecture)

# add the local platform as determined by the platform module
cfg.append("-o /LocalSite/Platform=%s" % platform.machine())

configureCmd = "%s %s" % (self.pp.configureScript, " ".join(cfg))
retCode, _configureOutData = self.executeAndGetOutput(configureCmd, self.pp.installEnv)
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Dirac Pilots

The Dirac interware is a software framework for distributed computing,
providing a complete solution to one or more user community requiring access to distributed resources.
Dirac builds a layer between the users and the resources offering a common interface to a number of heterogeneous providers,
integrating them in a seamless manner, providing interoperability, at the same time as an optimized, transparent and reliable usage of the resources.

The Pilot repository is an independent part of the Dirac system dedicated to the development of Dirac Pilots.
57 changes: 0 additions & 57 deletions README.rst

This file was deleted.

Loading