bash-flock-wrapper

A bash script skeleton for creating scripts that can only run one instances at any given time by using flock.

https://github.com/developerstoolbox/bash-flock-wrapper

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.5%) to scientific vocabulary

Keywords

bash flock wolfsoftware
Last synced: 4 months ago · JSON representation ·

Repository

A bash script skeleton for creating scripts that can only run one instances at any given time by using flock.

Basic Info
  • Host: GitHub
  • Owner: DevelopersToolbox
  • License: mit
  • Language: Shell
  • Default Branch: master
  • Homepage:
  • Size: 188 KB
Statistics
  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • Open Issues: 3
  • Releases: 1
Topics
bash flock wolfsoftware
Created almost 5 years ago · Last pushed 4 months ago
Metadata Files
Readme Contributing Funding License Code of conduct Citation Codeowners Security

README.md

DevelopersToolbox logo
Github Build Status License Created
Release Released Commits since release

Overview

Overview

A bash script skeleton for creating scripts that can only run one instance of itself at any given time by using flock (if installed or a work around if not).

Usage

Take a copy of the script, and rename as required, and use this as the basis for any script that requires to be run exclusively.

It is ideal for jobs in cron for example that run regularly but cannot overlap.

shell function actual_script() { echo "I am Locked - Sleep time" sleep 3 echo "Now I Unlock" }

Simply replace the contents of 'actual_script' with the script that you want to be protected by flock. You can treat this function as you would any other function, set variables, call other functions etc etc etc.

How it works

When the script starts it looks for the existence of a lock file, if it exists it will display an error and exit. If it does not exist it will create it and then continue on with the rest of the script.


Owner

  • Name: Developers Toolbox
  • Login: DevelopersToolbox
  • Kind: organization
  • Email: github@wolfsoftware.com
  • Location: United Kingdom

A selection of tools to help developers. Created by Wolf Software.

Citation (CITATION.cff)

cff-version: 1.2.0
message: If you use this software, please cite it using these metadata.
title: Bash Flock Wrapper
abstract: A bash script skeleton for creating scripts that can only run one instances at any given time by using flock.
type: software
version: 0.1.0
date-released: 2024-06-04
repository-code: https://github.com/DevelopersToolbox/bash-flock-wrapper
keywords:
  - "Wolf Software"
  - "Software"
license: MIT
authors:
  - family-names: "Wolf"
    orcid: "https://orcid.org/0009-0007-0983-2072"

GitHub Events

Total
  • Delete event: 65
  • Issue comment event: 142
  • Push event: 125
  • Pull request review event: 109
  • Pull request event: 133
  • Create event: 68
Last Year
  • Delete event: 65
  • Issue comment event: 142
  • Push event: 125
  • Pull request review event: 109
  • Pull request event: 133
  • Create event: 68

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 0
  • Total pull requests: 102
  • Average time to close issues: N/A
  • Average time to close pull requests: 1 day
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.7
  • Merged pull requests: 85
  • Bot issues: 0
  • Bot pull requests: 102
Past Year
  • Issues: 0
  • Pull requests: 84
  • Average time to close issues: N/A
  • Average time to close pull requests: 1 day
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.7
  • Merged pull requests: 68
  • Bot issues: 0
  • Bot pull requests: 84
Top Authors
Issue Authors
  • dependabot[bot] (2)
Pull Request Authors
  • dependabot[bot] (147)
Top Labels
Issue Labels
dependabot: dependencies (2) dependabot: ecosystem : github actions (2) dependabot: auto approve (2) dependabot: auto merge (2)
Pull Request Labels
dependabot: dependencies (147) dependabot: ecosystem : github actions (147) dependabot: auto approve (129) dependabot: auto merge (129) dependabot: manual merge (6)

Dependencies

.github/workflows/cicd.yml actions
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
.github/workflows/citation-validation.yml actions
  • ActionsToolbox/get-language-versions-action 446919617fd774095b5dd3ed71c39dd3fd0d8f4f composite
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
  • citation-file-format/cffconvert-github-action 4cf11baa70a673bfdf9dad0acc7ee33b3f4b6084 composite
  • ruby/setup-ruby d5fb7a202fc07872cb44f00ba8e6197b70cb0c55 composite
.github/workflows/delete-old-workflow-runs.yml actions
  • Gamesight/slack-workflow-status 68bf00d0dbdbcb206c278399aa1ef6c14f74347a composite
  • Mattraks/delete-workflow-runs 39f0bbed25d76b34de5594dceab824811479e5de composite
.github/workflows/dependabot.yml actions
  • dependabot/fetch-metadata 5e5f99653a5b510e8555840e80cbf1514ad4af38 composite
.github/workflows/document-validation.yml actions
  • ActionsToolbox/get-language-versions-action 446919617fd774095b5dd3ed71c39dd3fd0d8f4f composite
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
  • actions/setup-node 60edb5dd545a775178f52524783378180af0d1f8 composite
  • ruby/setup-ruby d5fb7a202fc07872cb44f00ba8e6197b70cb0c55 composite
.github/workflows/generate-release.yml actions
  • Bullrich/generate-release-changelog 6b60f004b4bf12ff271603dc32dbd261965ad2f2 composite
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
  • softprops/action-gh-release 69320dbe05506a9a39fc8ae11030b214ec2d1f87 composite
.github/workflows/generate-test-release.yml actions
  • Bullrich/generate-release-changelog 6b60f004b4bf12ff271603dc32dbd261965ad2f2 composite
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
  • softprops/action-gh-release 69320dbe05506a9a39fc8ae11030b214ec2d1f87 composite
.github/workflows/greetings.yml actions
  • actions/first-interaction 34f15e814fe48ac9312ccf29db4e74fa767cbab7 composite
.github/workflows/purge-deprecated-workflow-runs.yml actions
  • Gamesight/slack-workflow-status 68bf00d0dbdbcb206c278399aa1ef6c14f74347a composite
  • otto-de/purge-deprecated-workflow-runs 31a4e821d43e9a354cbd65845922c76e4b4b3633 composite
.github/workflows/repository-validation.yml actions
  • ActionsToolbox/get-language-versions-action 446919617fd774095b5dd3ed71c39dd3fd0d8f4f composite
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
  • actions/setup-go cdcb36043654635271a94b9a6d1392de5bb323a7 composite
  • actions/setup-python 82c7e631bb3cdc910f68e0081d67478d79c6982d composite
.github/workflows/security-hardening.yml actions
  • actions/checkout a5ac7e51b41094c92402da3b24376905380afc29 composite
  • zgosalvez/github-actions-ensure-sha-pinned-actions 2f2ebc6d914ab515939dc13f570f91baeb2c194c composite
.github/workflows/stale.yml actions
  • Gamesight/slack-workflow-status 68bf00d0dbdbcb206c278399aa1ef6c14f74347a composite
  • actions/stale 28ca1036281a5e5922ead5184a1bbf96e5fc984e composite