{"id":23122583,"url":"https://github.com/folio-org/folio-ansible","last_synced_at":"2025-07-12T20:08:13.332Z","repository":{"id":13234779,"uuid":"67722864","full_name":"folio-org/folio-ansible","owner":"folio-org","description":"Ansible playbook for FOLIO","archived":false,"fork":false,"pushed_at":"2025-03-25T20:04:21.000Z","size":2294,"stargazers_count":27,"open_issues_count":0,"forks_count":23,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-25T21:22:43.775Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jinja","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/folio-org.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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}},"created_at":"2016-09-08T16:56:38.000Z","updated_at":"2025-03-24T19:24:42.000Z","dependencies_parsed_at":"2024-04-22T02:57:27.498Z","dependency_job_id":"14a95db2-9027-421e-a81f-6fe64cace281","html_url":"https://github.com/folio-org/folio-ansible","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/folio-org%2Ffolio-ansible","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/folio-org%2Ffolio-ansible/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/folio-org%2Ffolio-ansible/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/folio-org%2Ffolio-ansible/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/folio-org","download_url":"https://codeload.github.com/folio-org/folio-ansible/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247118746,"owners_count":20886616,"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":[],"created_at":"2024-12-17T07:28:16.018Z","updated_at":"2025-04-04T04:20:36.118Z","avatar_url":"https://github.com/folio-org.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"# folio-ansible - Sample Ansible playbook and roles for FOLIO (and Vagrant)\n\nThis repository contains some sample Ansible roles for getting a FOLIO\ninstallation up and running quickly. For more details, see the\n[doc](doc/index.md) directory.\n\nThe primary audiences for this project are:\n\n1. Developers who want to take the code for a spin in a VM, without\n   altering their own working environment.\n2. Frontend developers looking for a \"black box\" FOLIO backend system\n   to code against.\n3. DevOps and others interested in automating FOLIO image builds\n4. System administrators interested in deployment down the road.\n\n## License\n\nCopyright (C) 2016-2022 The Open Library Foundation\n\nThis software is distributed under the terms of the Apache License,\nVersion 2.0. See the file \"[LICENSE](LICENSE)\" for more information.\n\n## System Requirements\n\nFor Vagrant deployment:\n* [Vagrant](https://www.vagrantup.com) \\\u003e= 1.9.6 (note that Ubuntu\n  provides a\n  [broken 2.0.2 version](https://github.com/hashicorp/vagrant/issues/9788)\n  and an outdated 1.9.1 version, install the latest\n  [Debian file from the Vagrant Download page](https://www.vagrantup.com/downloads.html)\n  using `dpkg -i vagrant\\_….deb` instead)\n* [VirtualBox](https://www.virtualbox.org)\n\nFor Ansible provisioning (to build a dev VM, or to build the demo or\nbackend system from scratch)\n* [Ansible](http://docs.ansible.com/ansible/intro_installation.html) \\\u003e= 2.3\n\nThis installation has been tested on macOS \"Sierra\", Ubuntu 16.04 and 18.04, and\nWindows 10. Note that Windows cannot serve as an Ansible control host.\n\n## Quick Start\n\nIf all you want to do is try out a prepackaged FOLIO demo Vagrant box,\ncreate a new directory, `cd` into it, and try:\n\n    $ vagrant init folio/release-core\n    $ vagrant up\n\nNote: That is for the Juniper R2-2021 release -- subsequent flower releases do not have a release-core.\nAwaiting platform-minimal [FOLIO-3253](https://issues.folio.org/browse/FOLIO-3253).\n\nNow you can open [http://localhost:3000](http://localhost:3000).\nAdmin login: diku\\_admin/admin\n\nOr, if you want to try a prepackaged FOLIO backend Vagrant box with the\nmost recent versions of all components, do:\n\n    $ vagrant init folio/snapshot\n    $ vagrant up\n\nNote: The VM will require the allocation of more memory.\nRefer to [notes](https://dev.folio.org/tutorials/folio-vm/01-create-workspace/#configure-vagrantfile).\n\nThe Vagrant Cloud page [folio](https://app.vagrantup.com/folio) lists\nall available boxes and has\ndetailed release notes, including which versions of the backend and\nfrontend modules are provided.\n\nFor all Vagrant boxes, the Okapi port on the VM (9130) will be\nforwarded to `localhost:9130` and the Stripes port and user interface\nwill be forwarded to `localhost:3000`. You should see the Stripes user\ninterface at `http://localhost:3000`.\n\nFor more information, see [Vagrant VMs and Ansible roles](doc/index.md).\n\nIn addition, this project includes a [Vagrantfile](Vagrantfile) for\ncreating different environments.\n\n## Deployment on a server or virtual machine\n\n### Deploy host requirement\n\nThe deploy host is used to run the Ansible playbooks.\n\n* Linux or MacOSX\n* Ansible installed\n* ssh configured to access the server - preferred using ssh-keys\n\n### Server requirements\n\n* Ubuntu 16.04 for Folio Fameflower\n* Ubuntu 20.04 or Debian 10 for Folio Honeysuckle\n* Python installed\n* For SSL you need\n    * Certificate file and a key file without Password\n    * FQDN\n\n### Installation\n\nTo install Folio using the folio.yml Ansible playbook, you have to download\nand unpack the folio-ansible sources. Then create a inventory file.\nYou also have to configure some parameters. You can put\nthese in the inventory file, in group vars files or in host vars files. In this\nexample we use the inventory. The contents of the inventory file `inventory.yml`:\n\n    all:\n      hosts:\n        my-host.domain.com:\n      children:\n        release:\n          hosts:\n            my-host.domain.com:\n              save_dir: /etc/folio/savedir\n              okapi_interface: ens3\n              okapi_storage: postgres\n              tenant: mytenant\n              tenant_name: \"My Organisation\"\n              tenant_description: \"Description of my Organisation\"\n              okapi_role: dev\n        stripes:\n          hosts:\n            my-host.domain.com:\n              stripes_host_address: 0.0.0.0\n              stripes_okapi_url: http://my-host.domain.com:9130\n              stripes_tenant: mytenant\n\nNext we can install Folio using the `folio.yml` playbook:\n\n    ansible-playbook -u ubuntu -i inventory.yml folio.yml\n\nTo learn more about the parameters, you should have a look at the\nplaybook `folio.yml`, to see which roles are executed and in the\ndocumentation of the roles.\n\nAnother example includes deployment of Stripes to use https instead of http,\nsecuring okapis supertenant and the tenant admin user.\n\n    all:\n      hosts:\n        my-host.domain.com:\n      children:\n        release:\n          hosts:\n            my-host.domain.com:\n              save_dir: /etc/folio/savedir\n              okapi_interface: ens3\n              okapi_storage: postgres\n              tenant: mytenant\n              tenant_name: \"My Organisation\"\n              tenant_description: \"Description of my Organisation\"\n              okapi_role: dev\n              admin_user:\n                username: my_admin\n                password: tenantadminpassword\n        stripes:\n          hosts:\n            my-host.domain.com:\n              stripes_host_address: 0.0.0.0\n              stripes_okapi_url: http://my-host.domain.com:9130\n              stripes_tenant: mytenant\n              stripes_enable_https: yes\n              stripes_certificate_file: /path/to/certificate.pem\n              stripes_certificate_key_file: /path/to/key.pem\n              nginx_proxy_okapi: yes\n              stripes_listen_port: 443\n              stripes_server_name: my-host.domain.com\n        production:\n          hosts:\n            my-host.domain.com:\n              superuser_username: opkapi_superuser\n              superuser_password: superpassword\n\n\n\n## Documentation\n\n* [VM and playbook documentation](doc/index.md)\n* [Contributing guidelines](CONTRIBUTING.md)\n* [Vagrant documentation](https://www.vagrantup.com/docs/)\n* [Ansible documentation](http://docs.ansible.com/ansible/index.html)\n* See project [FOLIO](https://issues.folio.org/browse/FOLIO)\nat the [FOLIO issue tracker](https://dev.folio.org/guidelines/issue-tracker).\n* Other FOLIO Developer documentation is at [dev.folio.org](https://dev.folio.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffolio-org%2Ffolio-ansible","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffolio-org%2Ffolio-ansible","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffolio-org%2Ffolio-ansible/lists"}