{"id":14984681,"url":"https://github.com/indigo-dc/jenkins-pipeline-library","last_synced_at":"2025-04-10T21:20:58.549Z","repository":{"id":33262586,"uuid":"144279263","full_name":"indigo-dc/jenkins-pipeline-library","owner":"indigo-dc","description":"Jenkins pipeline library with common functionalities for CI/CD environments, mainly targeted for the implementation of the SQA baseline requirements from https://indigo-dc.github.io/sqa-baseline/","archived":false,"fork":false,"pushed_at":"2023-01-24T22:22:18.000Z","size":12582,"stargazers_count":11,"open_issues_count":61,"forks_count":6,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-24T18:49:38.240Z","etag":null,"topics":["continuous-delivery","continuous-deployment","continuous-integration","continuous-testing","deep-hybrid-datacloud","extreme-datacloud","indigo-datacloud","jenkins-ci","jenkins-pipeline","jenkinsfile","pipeline-as-code"],"latest_commit_sha":null,"homepage":"","language":"Groovy","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"orviz/jenkins-pipeline-library","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/indigo-dc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null}},"created_at":"2018-08-10T11:43:53.000Z","updated_at":"2023-10-18T09:05:06.000Z","dependencies_parsed_at":"2023-02-14T02:01:44.012Z","dependency_job_id":null,"html_url":"https://github.com/indigo-dc/jenkins-pipeline-library","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indigo-dc%2Fjenkins-pipeline-library","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indigo-dc%2Fjenkins-pipeline-library/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indigo-dc%2Fjenkins-pipeline-library/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indigo-dc%2Fjenkins-pipeline-library/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/indigo-dc","download_url":"https://codeload.github.com/indigo-dc/jenkins-pipeline-library/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248298919,"owners_count":21080433,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["continuous-delivery","continuous-deployment","continuous-integration","continuous-testing","deep-hybrid-datacloud","extreme-datacloud","indigo-datacloud","jenkins-ci","jenkins-pipeline","jenkinsfile","pipeline-as-code"],"created_at":"2024-09-24T14:09:30.899Z","updated_at":"2025-04-10T21:20:58.532Z","avatar_url":"https://github.com/indigo-dc.png","language":"Groovy","funding_links":[],"categories":[],"sub_categories":[],"readme":"# A library to implement Software Quality Assurance (SQA) checks in Jenkins environments\n\n[![SQAaaS badge shields.io](https://img.shields.io/badge/sqaaas%20software-silver-lightgrey)](https://api.eu.badgr.io/public/assertions/8swrxF-8TpuYmR6EvXnW2w \"SQAaaS silver badge achieved\")\n\n#### Achievements \n[![SQAaaS badge](https://github.com/EOSC-synergy/SQAaaS/raw/master/badges/badges_150x116/badge_software_silver.png)](https://api.eu.badgr.io/public/assertions/8swrxF-8TpuYmR6EvXnW2w \"SQAaaS silver badge achieved\")\n\n\n## Institutions owning the result\n\u003cp float=\"left\"\u003e\n    \u003cimg src=\"resources/static/images/logo-csic.png\" height=\"50\" hspace=\"10\"/\u003e\n    \u003cimg src=\"resources/static/images/logo-UPV.png\" height=\"50\" hspace=\"10\"/\u003e\n    \u003cimg src=\"resources/static/images/logo-LIP.png\" height=\"50\" hspace=\"10\"/\u003e\n\u003c/p\u003e\n\n\n## Motivation\nThe v2 series of the present library provide a straightforward way for software projects\nto be compliant with common SQA practices.\n\nIn particular, the library provides the functionality to cover as much criteria as\npossible from the Software and Service quality baselines below:\n\n * [A set of Common Software Quality Assurance Baseline Criteria for Research Projects](https://github.com/indigo-dc/sqa-baseline/), [online](https://indigo-dc.github.io/sqa-baseline/) available.\n * [A set of Common Service Quality Assurance Baseline Criteria for Research Projects](https://github.com/eosc-synergy/service-qa-baseline/), [online](https://eosc-synergy.github.io/service-qa-baseline/) available.\n\n\n## Short intro\nThe SQA requirements are defined through a YAML-based configuration file that hides the\ncomplexity of handling directly the Jenkins [Pipeline as Code's](https://www.jenkins.io/solutions/pipeline/)\nfeatures. As a result, the SQA work, as defined in the YAML file `config.yml`, is\norganized according to the criteria code names from the aforementioned baselines.\n\nAs an example, ``qc_style`` setting in the YAML is a direct reference to the \n``QC.Sty`` criteria in the previous software quality baseline, which establishes\nthe good practices that the source code shall follow in terms of style. The following\nexample runs [flake8](https://pypi.org/project/flake8/) to check style consistency in\na Python project:\n\n```\nsqa_criteria:\n  qc_style:\n    container: python-test-tools\n    commands:\n      - flake8\n```\n\nAs it can be seen in the example, the library provides the ``container`` option as a\nway to specify the agent where the check will run. In the current version, the\nlibrary supports [Docker Compose](https://docs.docker.com/compose/) as the container\norchestration tool to fire up the required set of services. In this example, the \n``python-test-tools`` is the identifier of a Docker Compose service. \n\n_You can check a full working example [here](https://github.com/EOSC-synergy/DEEPaaS)_\n\n__In order to get started with the library, please check our\n[documentation](https://indigo-dc.github.io/jenkins-pipeline-library/stable/2.0.0/).__\n\n\n\n## Contributing\n\nJenkins CI/CD pipelines are often similar in the type of actions that are\ntriggered. It then makes sense to have a common library for tackling them,\ncovering different programming languages and interfaces to software lifecycle\nmanagement tools.\n\nContributions are really welcome. Please check our\n[contribution](CONTRIBUTING.md) guidelines.\n\n## License\n\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\nindigo-dc/jenkins-shared-library is licensed under [Apache 2.0](LICENSE)\n\n## Acknowledgments\n\nThe development of the v2 series is taking place under the [EOSC-Synergy's](https://eosc-synergy.eu)\nproject that has received funding from the European Union’s Horizon 2020 research \nand innovation programme under grant agreement number 857647.\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT1WF4g5KH3PnQE_Ve10QFRS-gZ0NpCQ7Qr-_km1RqnOCEF1fQt\"\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findigo-dc%2Fjenkins-pipeline-library","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Findigo-dc%2Fjenkins-pipeline-library","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findigo-dc%2Fjenkins-pipeline-library/lists"}