Skip to content
/ tools Public

Various HPC Tools and helper scripts (slurm, ssh etc.)

Notifications You must be signed in to change notification settings

ULHPC/tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

By ULHPC github Issues

     _    _ _      _    _ _____   _____   _______          _        _______ _                             _       __
    | |  | | |    | |  | |  __ \ / ____| |__   __|        | |      / / ____| |                           | |      \ \
    | |  | | |    | |__| | |__) | |         | | ___   ___ | |___  | | (___ | |_   _ _ __ _ __ ___     ___| |_ ___  | |
    | |  | | |    |  __  |  ___/| |         | |/ _ \ / _ \| / __| | |\___ \| | | | | '__| '_ ` _ \   / _ \ __/ __| | |
    | |__| | |____| |  | | |    | |____     | | (_) | (_) | \__ \ | |____) | | |_| | |  | | | | | | |  __/ |_ (__ _| |
     \____/|______|_|  |_|_|     \_____|    |_|\___/ \___/|_|___/ | |_____/|_|\__,_|_|  |_| |_| |_|  \___|\__\___(_) |
                                                                   \_\                                            /_/

   Copyright (c) 2020-2021 UL HPC Team <hpc-team@uni.lu>

Various HPC Tools and helper scripts/functions (slurm, ssh etc.)

.
├── Makefile      # GNU Makefile root configuration
├── README.md
├── VERSION       # /!\ DO NOT EDIT: store current version of the repository
└── slurm         # Slurm tools and utilities
    └── profile.d
        └── slurm.sh     # Slurm helpers, to be sourced

Similar project/resources:

Installation / Repository Setup

This repository is hosted on Github. To clone this repository, proceed as follows (adapt accordingly):

$> mkdir -p ~/git/github.com/ULHPC/
$> cd ~/git/github.com/ULHPC/
$> git clone https://github.com/ULHPC/tools.git

/!\ IMPORTANT: Once cloned, initiate your local copy of the repository by running:

$> cd tools
$> make setup

This will initiate the Git submodules of this repository and setup the git flow layout for this repository. Later on, you can update your local branches by running:

 $> make up

If upon pulling the repository, you end in a state where another collaborator have upgraded the Git submodules for this repository, you'll end in a dirty state (as reported by modifications within the .submodules/ directory). In that case, just after the pull, you have to run make up to ensure consistency with regards the Git submodules:

Finally, you can upgrade the Git submodules to the latest version by running:

$> make upgrade    # OR: 'git submodule update'

Issues / Feature request

You can submit bug / issues / feature request using the ULHPC/tools Project Tracker

Misc.

The Git branching model for this repository follows the guidelines of gitflow. In particular, the central repository holds two main branches with an infinite lifetime:

  • production: the production-ready branch
  • master: the main branch where the latest developments interviene. This is the default branch you get when you clone the repository.

Thus you are more than encouraged to install the git-flow (AVH Edition, as the traditional one is no longer supported) extensions following the installation procedures to take full advantage of the proposed operations. The associated bash completion might interest you also.

Releasing mechanism

The operation consisting of releasing a new version of this repository is automated by a set of tasks within the root Makefile.

In this context, a version number have the following format:

  <major>.<minor>.<patch>[-b<build>]

where:

  • < major > corresponds to the major version number
  • < minor > corresponds to the minor version number
  • < patch > corresponds to the patching version number
  • (eventually) < build > states the build number i.e. the total number of commits within the master branch.

Example: `1.0.0-b28`

The current version number is stored in the root file VERSION. /!\ NEVER MAKE ANY MANUAL CHANGES TO THIS FILE

For more information on the version, run:

 $> make versioninfo

If a new version number such be bumped, you simply have to run:

  $> make start_bump_{major,minor,patch}

This will start the release process for you using git-flow. Once you have finished to commit your last changes, make the release effective by running:

  $> make release

It will finish the release using git-flow, create the appropriate tag in the production branch and merge all things the way they should be.

Contributing

That's quite simple:

  1. Fork it
  2. Create your own feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

About

Various HPC Tools and helper scripts (slurm, ssh etc.)

Resources

Stars

Watchers

Forks

Packages

No packages published