{"id":36671056,"url":"https://github.com/hadret/ansible-role-restic","last_synced_at":"2026-01-12T10:40:54.739Z","repository":{"id":44160426,"uuid":"176682343","full_name":"hadret/ansible-role-restic","owner":"hadret","description":"Ansible Role - Restic","archived":false,"fork":false,"pushed_at":"2023-02-24T10:50:59.000Z","size":72,"stargazers_count":3,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-04-09T10:39:56.372Z","etag":null,"topics":["ansible","backups","infrastructure","restic","role","ubuntu"],"latest_commit_sha":null,"homepage":"https://galaxy.ansible.com/hadret/restic","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hadret.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-03-20T07:53:05.000Z","updated_at":"2022-06-15T15:14:57.000Z","dependencies_parsed_at":"2022-09-03T18:02:04.037Z","dependency_job_id":null,"html_url":"https://github.com/hadret/ansible-role-restic","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/hadret/ansible-role-restic","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadret%2Fansible-role-restic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadret%2Fansible-role-restic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadret%2Fansible-role-restic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadret%2Fansible-role-restic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hadret","download_url":"https://codeload.github.com/hadret/ansible-role-restic/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hadret%2Fansible-role-restic/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28338793,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T10:40:25.642Z","status":"ssl_error","status_checked_at":"2026-01-12T10:39:27.820Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["ansible","backups","infrastructure","restic","role","ubuntu"],"created_at":"2026-01-12T10:40:54.128Z","updated_at":"2026-01-12T10:40:54.731Z","avatar_url":"https://github.com/hadret.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"Ansible Role: Restic\n====================\n\n[![CI](https://github.com/hadret/ansible-role-restic/actions/workflows/ci.yaml/badge.svg)](https://github.com/hadret/ansible-role-restic/actions/workflows/ci.yaml)\n\nAn Ansible role that installs [restic](https://restic.net) on Linux \u0026 FreeBSD.\n\nRequirements\n------------\n\nNone.\n\nRole Variables\n--------------\n\nAvailable variables are listed below, along with default values (see\n[defaults/main.yml](defaults/main.yml)):\n\n```\nrestic_version: '0.15.1'\nrestic_install_path: '/usr/local/bin'\nrestic_password_file_path: '/root'\nrestic_discard_cron_stdout: false\n\nrestic_user: root\nrestic_group: \"{{ restic_user }}\"\n```\n\n* `restic_version` specifies version of the restic binary that should be\ninstalled. It's matched against GitHub repository where the releases are\nannounced for downloading.\n* `restic_install_path` provides path where the restic\nbinary should be available from (`/usr/local/bin` is exported by\ndefault as part of `$PATH`). It's also the same path that is used by the\nwrapper script that is doing the actual backup execution where the name is\nconstructed as `$restic_install_path/restic-$job_name` (more on that later).\n* `restic_password_file_path` provides path to the folder in which password\nfiles for restic repositories should be stored. Each file is constructed as\n`$restic_password_file_path/.restic-@job_name`. Those files are hidden (hence\n`.` in front of the file) by default and are restricted to the `restic_ user`\nand `restic_group` for read-only access. These, by default, are `root`, but it\ncan be overriden and any valid/already present user can be used. In such case\nproper capabilities are going to be ensured for this user.\n\n```\nrestic_discard_cron_stdout: false\n```\n\nDefines whether the cronjob output should be directed to `/dev/null` or not\n(it will send e-mail on each execution if this is set to `false`).\n\n```\nrestic_prometheus_exporter: true\nrestic_prometheus_output_path: /var/lib/node_exporter/textfile_collector\n```\n\nIt enables very simple Prometheus integration that is going to write three\nvalues to the default textfile collector location. Please note that enabling\nsupport for this is going to install/require two additional dependencies:\n`jq` and `moreutils` (for `sponge`).\n\n```\nrestic_repos: []\n```\n\nThis defines an array of restic jobs. Each defined job will create a separate\nwrapper script and a password file. Examples can be found in\n[defaults/main.yml](defaults/main.yml).\n\nDependencies\n------------\n\nNone.\n\nExample Playbook\n----------------\n\n```\n- hosts: all\n  roles:\n     - hadret.restic\n```\n\nCredits\n-------\n\nThis role builds on the shoulders of\n[donat-b/ansible-restic](https://github.com/donat-b/ansible-restic) and\n[paulfantom/ansible-restic](https://github.com/paulfantom/ansible-restic). All\nof the `molecule` tests and CI configuration are based on work of\n[geerlingguy](https://github.com/geerlingguy). A lot of parts for the Prometheus integration had been taken\ndirectly from [this Restic forum thread](https://forum.restic.net/t/restic-grafana-dashboard/1662/6).\n\nLicense\n-------\n\nMIT\n\nAuthor Information\n------------------\n\nThis role was somewhat assembled in 2018 by [Filip Chabik](https://chabik.com).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhadret%2Fansible-role-restic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhadret%2Fansible-role-restic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhadret%2Fansible-role-restic/lists"}