{"id":21995077,"url":"https://github.com/redhataccess/pantheon","last_synced_at":"2025-04-30T17:22:31.012Z","repository":{"id":34593703,"uuid":"170173900","full_name":"redhataccess/pantheon","owner":"redhataccess","description":"A modular documentation management and publication system","archived":false,"fork":false,"pushed_at":"2023-01-11T18:57:49.000Z","size":5939,"stargazers_count":14,"open_issues_count":17,"forks_count":37,"subscribers_count":19,"default_branch":"master","last_synced_at":"2025-04-13T06:55:41.520Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","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/redhataccess.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-02-11T17:47:35.000Z","updated_at":"2022-04-06T17:24:43.000Z","dependencies_parsed_at":"2023-01-15T08:00:50.647Z","dependency_job_id":null,"html_url":"https://github.com/redhataccess/pantheon","commit_stats":null,"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhataccess%2Fpantheon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhataccess%2Fpantheon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhataccess%2Fpantheon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhataccess%2Fpantheon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhataccess","download_url":"https://codeload.github.com/redhataccess/pantheon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251749233,"owners_count":21637492,"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-11-29T21:12:16.398Z","updated_at":"2025-04-30T17:22:30.981Z","avatar_url":"https://github.com/redhataccess.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pantheon 2.x\n\n[![Build Status](https://travis-ci.org/redhataccess/pantheon.png)](https://travis-ci.org/redhataccess/pantheon)\n[![Code Coverage](https://codecov.io/gh/redhataccess/pantheon/branch/master/graph/badge.svg)](https://codecov.io/github/redhataccess/pantheon?branch=master)\n\nPantheon 2 is a modular documentation management and publication system based on asciidoc\nand built on top of Apache sling.\n* [Contributing to Pantheon](#contributing-to-pantheon)\n* [Installing Pantheon](#installing-pantheon)\n * [Prerequisites](#prerequisites)\n * [Environment Variables](#environment-variables)\n * [Building the application](#building-the-application)\n * [Unit tests](#unit-tests)\n * [Running the application](#running-the-application)\n * [Live deploy of code](#live-deploy-of-code)\n * [Using the application](#using-the-application)\n * [Other use cases](#other-use-cases)\n * [Developing the frontend code](#developing-the-frontend-code)\n* [End user documentation](#end-user-documentation)\n\n## Contributing to Pantheon\n\n### Filing a bug for Pantheon 2 end-user documentation\n\nIf you have any suggestions to improve or extend the end-user documentation, create a new issue and tag @pantheon-doc-authors.\n\n### Prerequisites\n\n* You must have an account on GitHub.\n  [Signing up for a new GitHub account](https://help.github.com/en/github/getting-started-with-github/signing-up-for-a-new-github-account)\n* You must have registered SSH keys in your GitHub account.\n[Adding a new SSH key to your GitHub account](https://help.github.com/en/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account)\n* You must be a member of the `pantheon-developers` or `pantheon-doc-authors` team in the `redhataccess` group in GitHub.\n* You must be logged in to your account on GitHub.\n\n### Forking the repository\n\nFork the repository so that you can create and work with branches independently of the `redhataccess/pantheon` repository.\n\n1. In a web browser, navigate to https://github.com/redhataccess/pantheon\n1. Click **Fork**.\n1. Click your user space in GitHub.\n\n### Cloning the repository\n\nAfter you have forked the repository, you must clone it to your local machine and add the original `redhataccess/pantheon` repository as an upstream remote.\n\n1. From a terminal, clone the repository:\n\n    ```sh\n    $ git clone git@github.com:\u003cuser-space\u003e/pantheon.git\n    ```\n1. Set up `redhataccess/pantheon` as the upstream:\n\n    ```sh\n    $ cd pantheon\n    $ git remote add upstream git@github.com:redhataccess/pantheon.git\n    ```\n\n### Creating a working branch\n\nWhenever you work on a new issue, you must create a new working branch based on the latest version of the upstream master branch.\n\n1. Ensure you are on master\n\n    ```sh\n    $ git checkout master\n    ```\n1. Ensure your fork is up to date\n\n    ```sh\n    $ git pull upstream master\n    ```\n1. Create a working branch based on the issue in JIRA. For example:\n\n\n    ```sh\n    $ git checkout -b FCCEUD-\u003cID#\u003e\n    ```       \n\n### Creating a pull request and completing review \n\nWhen your work is ready to be reviewed and merged, create a pull request.\n\n1. Push your working branch to your fork:\n\n    ```sh\n    $ git push -u origin \u003cbranch_name\u003e\n    ```\n1. From the repository page in GitHub, click **New pull request**.\n1. Select your working branch from the compare list.\n1. Add `WIP:` to the title of the pull request. This automatically converts the pull request to a draft pull request.\n1. Click **Create new pull request**.\n1. Add the **awaiting tech review** label to the pull request.\n1. In the pull request comment field, enter `@redhataccess/eud-tech-review Please review for technical completeness and accuracy`.\n\n\n### The review process\n\nBoth the technical review and peer review processes take place in pull requests in GitHub.\n\n#### Documentation review\nAfter creating and labeling a pull request as outlined above, the developers review the pull request and add comments regarding technical accuracy. Writers receive a notification that comments have been added via email, and when all comments have been addressed, the developers change the label from **awaiting tech review** to **tech review complete**.\n\nWhen technical review is complete, writers click the **Reviewers** gear icon and select the name of a team member to request peer review. The peer writer reviews the pull request for clarity, consistency, and compliance with necessary standards.\nWriters receive a notification that comments have been added via email, and when all comments have been addressed, the reviewer clicks **Review changes \u003e Approve** from the **Files changed** tab of the pull request to approve the changes and the pull request.\n\n#### Code review\n\nFor code pull requests, one or more developers review the pull request. A contributor submits a PR and uses Github's **Reviewers** gear icon to tag `@redhataccess/pantheon-developers`. A developer comments on the code, and discusses it with the submitter, before ultimately deciding to accept or reject the PR.\n\n### Merging a pull request\n\nWhen you have addressed all technical review and peer review comments, notify the developers to accept the pull request.\n\n1. Remove `WIP` from the title of the pull request.\n1. Click **Request Review** and enter `@redhataccess/pantheon-developers`.\n\nThe developers check that the **Tech review complete** label has been added to the pull request and peer pull request approval provided, then accept it.\n\n## Installing Pantheon\n\n### Prerequisites\n* Podman\n* Buildah\n* Java\n\n### Environment Variables\n**Project Root Directory**\n\nThe build script provided in _scripts_ directory makes use of _PANTHEON_CODEBASE_ environment variable. Set this variable in your .bashrc or .bash_profile script. _PANTHEON_CODEBASE_ should point to the project's root directory.\n\n**Sling and MongoDB**\nThe scripts folder contains _pantheon_karaf.exports_ file. It contains the values required for the pantheon karaf distribution. If you are running MongoDB on a different port then\n- Make a copy of _pantheon_karaf.exports_ file\n- Place it in _.pantheon_ directory under your home directory\n- In `~/.pantheon/pantheon_karaf.exports`, update the _MONGO_DB_URI_ variable\n\n### Building the application\n_(All commands from here on will be assumed to be run from the project's root directory)_\n\n```sh\nsh scripts/deploy_local.sh\n```\nThe _deploy_local_ script will:\n- Run maven build that creates the pantheon karaf distribution\n- Extract the archive to _$PANTHEON_CODEBASE/pantheon-karaf-dist/target_. The distribution is being extracted to target, currently, because a fresh distribution is needed for changes in the pantheon-bundle codebase. In the future, that may change and accordingly script will also change.\n- Start Karaf, and drop you into the karaf shell\n### Using the application\n\nHead to http://localhost:8181/pantheon for the application's entry point.\n\nFor sling's management UI, you can head to http://localhost:8181/starter/index.html\n\n**Note:** If you plan to use git import UI locally, please follow the instructions in README under tools/git2pantheon. Also you will need to set the credentials of the user that would be used by git2pantheon to push the repository. It can be done by using environment variables (for both podman based and non-podman based).\n\n### Other use cases...\n\n\n**Debug using Karaf shell**\n- To view logs: log:display\n- To view exceptions: log:exception-display\n- To list all bundles and view their status: bundle:list\n- Find out why a bundle is in waiting state: diag _[bundle-id]_\n\n### Run the application using Podman\nFirst, install [podman](https://podman.io).\n\nThen, create a pod:\n\n```sh\npodman pod create --name pantheon-karaf -p 8181 -p 5005\n```\n\nThis will create a `pantheon-karaf` pod with ports 8181 (for web access) and 5005 (for\nremote Java debugging) open.\n\nRun a mongo database container in the pod.\n\n```sh\npodman run --pod pantheon-karaf --name slingmongo -d mongo\n```\n\nBuild the pantheon image\n\n```sh\nbuildah bud --layers -f container/Dockerfile -t pantheon-karaf-app .\n```\n\nRun the sling container in the pod.\n\n```sh\npodman run --pod pantheon-karaf -d -e  MONGO_DB_REPLICA='mongodb://localhost:27017'   -t --name pantheon-karaf-app   pantheon-karaf-app\n\n```\n\nThe Sling launchpad can be accessed at `http://localhost:8181` and you can log in to\nit using the `admin/admin` username password combo.\n\n### Live deploy of code\n\nThis is useful when developing the application.\nTo deploy the code live to a running application, all you have to do is\n\n```sh\n./mvnw clean install sling:install -pl pantheon-bundle\n```\n\nThis will install the code in this project on the running Sling instance, where it can\nbe previewed and modified.\n### Developing the frontend code\n\nIf making modifications that are entirely contained within the frontend, follow the instructions to build the application in this README, then\n\n```sh\ncd pantheon-bundle/frontend\n# Install/update node deps\nyarn\n# Build the app\nyarn build\n# Run React dev server/process\nyarn start\n```\n\nSee the pantheon-bundle/frontend/README.md for more information on the development server\n\nNOTE: It will likely be necessary to increase your inotify limit to ensure that yarn is able to detect changes in every project file.\nIf you are running into issues with yarn not automatically detecting saved changes, run the following command (its effects are permenent):\n```sh\necho fs.inotify.max_user_watches=65535 | sudo tee -a /etc/sysctl.conf \u0026\u0026 sudo sysctl -p\n```\n\nIt might be possible to improve this technique. Suggestions are welcome.\n\n### End user documentation\n\nThe source for the end user documentation is stored in `/pantheon-bundle/src/main/resources/SLING-INF/content/docs/`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhataccess%2Fpantheon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhataccess%2Fpantheon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhataccess%2Fpantheon/lists"}