{"id":27359528,"url":"https://github.com/rackerlabs/nexus-control","last_synced_at":"2025-04-13T00:30:02.024Z","repository":{"id":32726398,"uuid":"36316259","full_name":"rackerlabs/nexus-control","owner":"rackerlabs","description":"Control repository for developer/support.rackspace.com hosted on deconst","archived":false,"fork":false,"pushed_at":"2022-03-03T06:35:46.000Z","size":6124,"stargazers_count":7,"open_issues_count":19,"forks_count":36,"subscribers_count":19,"default_branch":"master","last_synced_at":"2025-04-13T00:29:56.969Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"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/rackerlabs.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":"2015-05-26T18:40:59.000Z","updated_at":"2023-09-08T16:58:02.000Z","dependencies_parsed_at":"2022-09-12T13:50:42.501Z","dependency_job_id":null,"html_url":"https://github.com/rackerlabs/nexus-control","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rackerlabs%2Fnexus-control","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rackerlabs%2Fnexus-control/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rackerlabs%2Fnexus-control/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rackerlabs%2Fnexus-control/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rackerlabs","download_url":"https://codeload.github.com/rackerlabs/nexus-control/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248650612,"owners_count":21139670,"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":"2025-04-13T00:30:01.415Z","updated_at":"2025-04-13T00:30:02.010Z","avatar_url":"https://github.com/rackerlabs.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Control Repository for developer.rackspace.com\n\n[![Build Status](https://build.developer.rackspace.com/rackerlabs/nexus-control/badge?branch=master)](https://build.developer.rackspace.com/rackerlabs/nexus-control/)\n\nDeconst control repository used to host [developer.rackspace.com](https://developer.rackspace.com/) and [support.rackspace.com](https://support.rackspace.com/). Changes to this repository take effect several minutes after being merged to master. Check [https://developer.rackspace.com/version/](https://developer.rackspace.com/version/) to see the most recent commit that's active in production. Invalid contents (incorrect JSON syntax, malformed templates) cause the repository to simply stop updating.\n\n## Local testing\n\nTo test changes to templates or assets on your local machine before pushing them to production, follow these instructions. Replace `/path/to` with whatever root directory you wish.\n\n1. Install Docker. Either [Docker Toolbox](https://docs.docker.com/engine/installation/mac/) or the [Docker for Mac or Windows beta](https://beta.docker.com/docs/) will work. Before you continue:\n\n * You should be able to run `docker version` on a terminal and see both `Client:` and `Server:` in the output before continuing.\n * You should be able to run `docker-compose version` without seeing \"command not found\".\n\n2. Clone [deconst/integrated](https://github.com/deconst/integrated), this repository, and any relevant content repositories. [rackerlabs/docs-developer-blog](https://github.com/rackerlabs/docs-developer-blog) includes the frontpage and is a likely candidate.\n\n  ```bash\n  git clone https://github.com/rackerlabs/nexus-control.git\n  git clone https://github.com/deconst/integrated.git\n  git clone https://github.com/rackerlabs/docs-developer-blog.git\n  ```\n\n3. Copy the file `integrated-env` from the `nexus-control` clone to `env` and replace the value of `CONTROL_REPO_HOST_PATH` with the path to your nexus-control clone.\n\n    ```bash\n    cp /path/to/nexus-control/integrated-env /path/to/integrated/env\n\n    ${EDITOR} /path/to/integrated/env\n    # Change this line:\n    #  export CONTROL_REPO_HOST_PATH= ; echo \"Please set CONTROL_REPO_HOST_PATH in ${BASH_SOURCE[@]}\" \u0026\u0026 return 1\n    # To:\n    #  export CONTROL_REPO_HOST_PATH=/path/to/nexus-control\n    ```\n\n4. Navigate to your deconst/integrated repository. Source the `env` file within your shell.\n\n    ```bash\n    cd /path/to/integrated\n    source ./env\n    ```\n\n5. Launch services with docker-compose.\n\n    ```bash\n    cd /path/to/integrated\n    docker-compose up -d\n\n    # Wait for \"content-service listening at http://[::]:8080\" to appear, then ^C\n    docker-compose logs -f content\n    ```\n\n6. Perform the initial asset and content load.\n\n    ```bash\n    cd /path/to/integrated\n\n    script/add-assets /path/to/nexus-control\n\n    script/add-jekyll /path/to/docs-developer-blog\n\n    # For Sphinx content:\n    # script/add-sphinx /path/to/docs-quickstart\n    ```\n\nVisit port 80 of your Docker host *([`http://localhost/`](http://localhost/) for the Docker beta, consult `docker-machine ip` for Docker Toolbox)* and verify that the content and assets you see match those on [the live site](https://developer.rackspace.com/). :tada:\n\nFor the path to content, see [config/content.d/developer.rackspace.com.json](https://github.com/rackerlabs/nexus-control/blob/master/config/content.d/developer.rackspace.com.json).\nFor example: [`http://localhost/docs/rkaas`](http://localhost/docs/rkaas/).\n\n#### Making changes\n\ndeconst/integrated will *not* live-reload changes that you make locally. After you make changes to the control repository, refresh your instance by running:\n\n```bash\ncd /path/to/integrated\n\ndocker-compose restart presenter\n\nscript/add-assets /path/to/nexus-control\n```\n\nIf you're unable to connect after doing this, wait several seconds for the presenter to start fully.\n\n#### Debugging\n\nIf the control repository does not load, look for errors in the presenter's output:\n\n```bash\ncd /path/to/integrated\n\ndocker-compose logs presenter\n```\n\nNote that both the presenter and content service take several seconds to launch and begin listening.\n\n#### Shutting down\n\nTo shut the system down completely and remove all local state, to start again from a blank slate:\n\n```bash\ncd /path/to/integrated\n\ndocker-compose stop\ndocker-compose rm -fv\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frackerlabs%2Fnexus-control","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frackerlabs%2Fnexus-control","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frackerlabs%2Fnexus-control/lists"}