{"id":18637322,"url":"https://github.com/openshift/origin-web-console","last_synced_at":"2025-04-11T09:32:49.917Z","repository":{"id":56417225,"uuid":"58488264","full_name":"openshift/origin-web-console","owner":"openshift","description":"Web Console for the OpenShift Application Platform","archived":false,"fork":false,"pushed_at":"2020-07-08T13:05:03.000Z","size":81803,"stargazers_count":123,"open_issues_count":0,"forks_count":232,"subscribers_count":203,"default_branch":"enterprise-3.11","last_synced_at":"2024-04-11T03:31:42.210Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.openshift.org/","language":"JavaScript","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/openshift.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":"2016-05-10T19:31:50.000Z","updated_at":"2023-12-19T17:38:54.000Z","dependencies_parsed_at":"2022-08-15T18:20:26.039Z","dependency_job_id":null,"html_url":"https://github.com/openshift/origin-web-console","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openshift%2Forigin-web-console","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openshift%2Forigin-web-console/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openshift%2Forigin-web-console/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openshift%2Forigin-web-console/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openshift","download_url":"https://codeload.github.com/openshift/origin-web-console/tar.gz/refs/heads/enterprise-3.11","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248368329,"owners_count":21092336,"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-07T05:35:21.202Z","updated_at":"2025-04-11T09:32:44.906Z","avatar_url":"https://github.com/openshift.png","language":"JavaScript","readme":"OpenShift Management Console\n=========================\nThe management console for [OpenShift Origin](https://github.com/openshift/origin).\n\n[![Build Status](https://travis-ci.org/openshift/origin-web-console.svg?branch=master)](https://travis-ci.org/openshift/origin-web-console)\n\nContributing\n------------\n\n#### Getting started\n\n1. Be sure to have a development environment running for OpenShift. See [the contributing doc](https://github.com/openshift/origin/blob/master/CONTRIBUTING.adoc#develop-locally-on-your-host), we recommend the use of `oc cluster up`.\n1. Install [Nodejs](http://nodejs.org/) and [npm](https://www.npmjs.org/)\n1. Install [grunt-cli](http://gruntjs.com/installing-grunt) and [bower](http://bower.io/) by running `npm install -g grunt-cli bower` (may need to be run with sudo)\n1. Install dev dependencies by running `hack/install-deps.sh`\n1. Launch the console and start watching for asset changes by running `grunt serve`. This should open \u003chttps://localhost:9000/\u003e in your default browser.\n\n    Note: If you see an ENOSPC error, you may need to increase the number of files your user can watch by running this command:\n\n    ```shell\n    echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf \u0026\u0026 sudo sysctl -p\n    ```\n1. Accept the self-signed certificate for the web console. (For Chrome on OS X, import `server.crt` into Keychain Access or accept the web console certificate in Safari.)\n\n#### Enable / disable console log output\n\nDebug logging can be enabled by opening your browser's JavaScript console, running the commands below, and then refreshing the page.\n\n```shell\nlocalStorage[\"OpenShiftLogLevel.main\"] = \"\u003clog level\u003e\";\nlocalStorage[\"OpenShiftLogLevel.auth\"] = \"\u003clog level\u003e\";\n```\n\nLoggers:\n* `OpenShiftLogLevel.main` - default logger for OpenShift\n* `OpenShiftLogLevel.auth` - auth specific logger, this includes login, logout, and oauth\n\nThe supported log levels are:\n* OFF (default for all loggers except main)\n* INFO\n* DEBUG\n* WARN\n* ERROR (default for main)\n\nNote: currently most of our logging either goes to INFO or ERROR\n\n#### Local configuration\n\n`app/config.js` is the default configuration file for web console\ndevelopment. If you need to change the configuration, for example, to point to\na different API server, copy `app/config.js` to\n`app/config.local.js` and edit the copy. `app/config.local.js` is\nnot tracked and will be used instead if it exists.\n\n#### Before opening a pull request\n\nPlease configure your editor to use the\nfollowing settings to avoid common code inconsistencies and dirty\ndiffs:\n\n* Use soft-tabs set to two spaces.\n* Trim trailing white space on save.\n* Set encoding to UTF-8.\n* Add new line at end of files.\n\nOr [configure your editor](http://editorconfig.org/#download) to\nutilize [`.editorconfig`](https://github.com/openshift/origin-web-console/blob/master/.editorconfig),\nwhich will apply these settings automatically.\n\nThen:\n\n1. If needed, run `grunt build` to update the files under the dist directory\n2. Run the spec tests with `grunt test`\n3. Run the integrations tests (your api server must be running) `grunt test-integration`\n4. Rebase and squash changes to a single commit\n\nNote: in order to run the end to end tests you must have [Firefox](https://www.mozilla.org/en-US/firefox/new/) installed.\n\n#### Production builds\n1. Make sure all dev dependencies are up to date by running `hack/install-deps.sh`\n2. Run `grunt build`\n3. TODO - run script to build bindata.go from the dist in this repo\n4. In your origin repo run `hack/build-go.sh`\n\nThe assets served by the OpenShift all-in-one server will now be up to date. By default the assets are served from [http://localhost:8091](http://localhost:8091)\n\n#### Debugging dist diff failures\nIf Jenkins complains that the built dist files are different than the committed version, ensure the committed version is correct:\n\n1. Run `hack/clean-deps.sh`\n2. Run `hack/install-deps.sh`\n3. Run `grunt build`\n4. If anything under dist or dist.java has changed, add it to your commit and re-push\n\n#### Contributing to the primary repositories\n\nThe web console is currently split into three repositories.  The two dependency repos are\n[origin-web-common](https://github.com/openshift/origin-web-common) and\n[origin-web-catalog](https://github.com/openshift/origin-web-catalog).\nTo make changes to one of these repositories while working in the web console, it is recommended that you clone down the\nrepository and create a `bower link`.  The following example assumes you clone your forks to `~/git-repos`:\n\n```bash\n# fork the origin-web-console \u0026 clone:\n$ cd ~/git-repos\n$ git clone git@github.com:\u003cyour-fork\u003e/origin-web-console.git\n# fork origin-web-common \u0026 clone:\n$ cd ~/git-repos\n$ git clone git@github.com:\u003cyour-fork\u003e/origin-web-common.git\n# fork origin-web-catalog \u0026 clone:\n$ cd ~/git-repos\n$ git clone git@github.com:\u003cyour-fork\u003e/origin-web-catalog.git\n#\n# Now, using bower link you can:\n$ cd ~/git-repos/origin-web-common\n$ bower link\n$ cd ~/git-repos/origin-web-catalog\n$ bower link\n$ cd ~/git-repos/origin-web-console\n$ bower link origin-web-common\n$ bower link origin-web-catalog\n#\n# NOTE:\n# When you make changes in the linked repos you will need to rebuild\n# as origin-web-console pulls from the /dist.  `grunt build` or `grunt watch`\n# should take care of this.\n```\n\nWhen finished, be sure to `hack/clean-deps.sh` and `hack/install-deps.sh` to remove\nthe links \u0026 avoid having issues with `/dist` conflicts the next time you build.\n\n\nArchitecture\n------------\n\nThe OpenShift v3 web console is based on AngularJS and [Hawt.io](https://github.com/hawtio/hawtio-core)\n\n#### Navigation\n\nThe v3 console supports a custom context root.  When running as part of the `openshift start` command the console's context root is injected into the `\u003cbase\u003e` tag of the index.html file.  In order to support custom context roots, all console URLs must be relative, so they should not contain a leading \"/\" character.\n\nFor example if you want to specify a URL directly in an HTML template to go to the project overview it would look like\n\n```html\n\u003ca href=\"project/foo/overview\"\u003e\n```\n\nand would actually resolve to be `/contextroot/project/foo/overview` by the browser.  Similarly, if you want to use JavaScript to change the current page location, you should use the $location service from angular like\n\n```javascript\n$location.url(\"project/foo/overview\")\n```\n\nFinally, if you want to reference the root of the web console use the path `./`\n\n#### Extension points\n\nThere are two main ways to extend the v3 OpenShift console.\n\n##### Add primary / secondary navigation tabs to the project nav\n\nWe rely on [hawtio-core-navigation](https://github.com/hawtio/hawtio-core-navigation) to build the primary/secondary nav that appears once you are in a project.  We have customized the rendering of the tabs, so refer to [app/scripts/app.js](app/scripts/app.js) to see how we register our out of the box tabs.\n\n##### Inject additional content into the page\n\nWe include the [hawtio-extension-service](https://github.com/hawtio/hawtio-extension-service).  Currently we do not render any extension points, but if there are any locations where you would like to see customizable content, this is how we will add a hook to do that.  As hooks are added we will provide a list of them here.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenshift%2Forigin-web-console","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenshift%2Forigin-web-console","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenshift%2Forigin-web-console/lists"}