{"id":44315537,"url":"https://github.com/fccn/nau_playbooks","last_synced_at":"2026-02-11T05:08:07.345Z","repository":{"id":41069659,"uuid":"366413504","full_name":"fccn/nau_playbooks","owner":"fccn","description":"NAU ansible playbooks","archived":false,"fork":false,"pushed_at":"2026-01-29T16:00:11.000Z","size":1234,"stargazers_count":1,"open_issues_count":2,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2026-01-30T04:27:14.276Z","etag":null,"topics":["ansible","nau","playbook"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fccn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-05-11T14:38:14.000Z","updated_at":"2026-01-29T16:05:29.000Z","dependencies_parsed_at":"2023-12-13T15:45:41.422Z","dependency_job_id":"682b05a4-6cd2-4a23-abb1-4b6432e3dcf3","html_url":"https://github.com/fccn/nau_playbooks","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fccn/nau_playbooks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fccn%2Fnau_playbooks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fccn%2Fnau_playbooks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fccn%2Fnau_playbooks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fccn%2Fnau_playbooks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fccn","download_url":"https://codeload.github.com/fccn/nau_playbooks/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fccn%2Fnau_playbooks/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29327111,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T03:52:29.695Z","status":"ssl_error","status_checked_at":"2026-02-11T03:52:23.094Z","response_time":97,"last_error":"SSL_read: 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","nau","playbook"],"created_at":"2026-02-11T05:08:07.290Z","updated_at":"2026-02-11T05:08:07.340Z","avatar_url":"https://github.com/fccn.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"Nau playbooks\n=============\n\nThis repository holds the specific playbooks required to manage the Open edX installation at NAU.\n\n## Clone the required repositories\nThis repository uses another different repository.\n\nThe `secure-nau-data` repository is the private NAU repository where the keys and passwords are stored,\non per environment.\n\nCommands to clone the dependencies:\n```bash\ngit clone -b master git@github.com:fccn/secure-nau-data.git nau-data\ngit clone -b master git@github.com:fccn/nau_playbooks.git nau_playbooks\n```\n\n## Install Python 3.11\n\nBecause of the old version of Open edX that we use on NAU, we need to use the older Python 3.11 version.\n\nDouble check that you are using the Python 3.11 version, with:\n\n```bash\npython --version\n```\n\nTo install the `pip` on the older Python version 3.11, run:\n\n```bash\nwget https://bootstrap.pypa.io/get-pip.py\npython3.11 get-pip.py\n```\n\n## uv\n\n```bash\nuv venv --seed venv -p python3.11\n```\n\n## Installing OS packages\nSome python pip dependencies or some ansible modules also require some operating system packages.\n```bash\nsudo apt install -y build-essential software-properties-common python3-software-properties curl git libxml2-dev libxslt1-dev libfreetype6-dev python3-pip python3-apt python3-dev tree libmysqlclient-dev libssl-dev libffi-dev python3-minimal\n```\n\n## Initializing Python Virtual Environment and Install dependencies\n\n```bash\npython3.11 -m venv venv\nsource venv/bin/activate\n\npip install -r requirements.txt\nansible-galaxy install -p vendor/roles -r requirements.yml\n```\n\n## Run an ansible playbook\n\nTo run an ansible playbook, like for example the `deploy.yml` playbook, use a similar command:\n```bash\nansible-playbook -i nau-data/envs/\u003cenv\u003e/hosts.ini deploy.yml --limit XPTO\n```\n\n## Using --check and --diff (Dry Run Mode)\n\nWhen working with Ansible playbooks, it's a good practice to preview changes before applying them to your systems.\nTwo flags are particularly useful for this:\n\n### --check flag\nThe `--check` flag runs the playbook in \"dry-run\" mode. It simulates the execution without actually making any changes to the target systems.\nThis allows you to see what tasks would be executed and catch potential errors before they happen.\n\n```bash\nansible-playbook -i nau-data/envs/\u003cenv\u003e/hosts.ini deploy.yml --limit XPTO --check\n```\n\n### --diff flag\nThe `--diff` flag shows the differences that would be made to files. When combined with `--check`, it displays what changes would occur without applying them.\nThis is particularly useful for tasks that modify configuration files, as you can see the exact line-by-line differences.\n\n```bash\nansible-playbook -i nau-data/envs/\u003cenv\u003e/hosts.ini deploy.yml --limit XPTO --diff\n```\n\n### Using both together (recommended for beginners)\nFor safety, always use both flags together when testing a playbook for the first time:\n\n```bash\nansible-playbook -i nau-data/envs/\u003cenv\u003e/hosts.ini deploy.yml --limit XPTO --check --diff\n```\n\nThis combination will:\n- Show you exactly what tasks would run\n- Display file changes side-by-side\n- Make no actual modifications to your systems\n\nOnce you're confident the changes are correct, run the playbook without these flags to apply the changes.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffccn%2Fnau_playbooks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffccn%2Fnau_playbooks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffccn%2Fnau_playbooks/lists"}