{"id":14973430,"url":"https://github.com/redhat-developer-tooling/developer-platform-install","last_synced_at":"2025-10-27T01:30:35.209Z","repository":{"id":67843716,"uuid":"44125224","full_name":"redhat-developer-tooling/developer-platform-install","owner":"redhat-developer-tooling","description":"Single Installer for all Red Hat Development Tools and more. Download it form Red Hat Developers Portal web site -  http://developers.redhat.com/products/devsuite/overview/.","archived":false,"fork":false,"pushed_at":"2019-07-23T15:27:22.000Z","size":169519,"stargazers_count":26,"open_issues_count":56,"forks_count":29,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-02-01T01:25:04.938Z","etag":null,"topics":["angular1","electron-app","es6","gulp","installer","macos","nodejs","powershell","windows"],"latest_commit_sha":null,"homepage":"","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/redhat-developer-tooling.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":"2015-10-12T18:10:26.000Z","updated_at":"2025-01-15T16:30:41.000Z","dependencies_parsed_at":"2023-03-11T02:23:56.264Z","dependency_job_id":null,"html_url":"https://github.com/redhat-developer-tooling/developer-platform-install","commit_stats":{"total_commits":1546,"total_committers":22,"mean_commits":70.27272727272727,"dds":0.5504527813712807,"last_synced_commit":"58eead43689b635c29b7157e5b5e76d681948bba"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer-tooling%2Fdeveloper-platform-install","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer-tooling%2Fdeveloper-platform-install/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer-tooling%2Fdeveloper-platform-install/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer-tooling%2Fdeveloper-platform-install/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-developer-tooling","download_url":"https://codeload.github.com/redhat-developer-tooling/developer-platform-install/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238418225,"owners_count":19468868,"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":["angular1","electron-app","es6","gulp","installer","macos","nodejs","powershell","windows"],"created_at":"2024-09-24T13:48:42.408Z","updated_at":"2025-10-27T01:30:34.754Z","avatar_url":"https://github.com/redhat-developer-tooling.png","language":"JavaScript","readme":"Red Hat Development Suite Installer\n====================================\n\nThis installer aims to produce ready to use development environment for [Red\nHat Container Development Kit](http://developers.redhat.com/products/cdk/overview/)\non Windows and macOS platforms.\n\nDeliverables\n------------\nBuild output is two platform specific executables: Online and Bundle installer.\nOnline Installer is lightweight (approximately 50Mb) and it downloads everything\nduring installation. Bundle Installer includes most of binary dependencies and\ndownloads binaries that cannot be included during installation.\n\n#### Windows\n\nBoth Installers are self extracting executable files made with 7-zip file\narchiver with a high compression ratio (7-Zip is licensed under\nthe GNU LGPL license, more details on \u003chttps://www.7zip.org\u003e).\n\n#### macOS\n\nEach Installer is a disk image (.dmg file) with macOS Application Bundle inside.\n\nArchitecture\n------------\n\nThis installer is desktop application for Windows and macOS built with\n[Electron](https://electronjs.org/docs/all).\n\nBuilding Installer\n------------------\n\nTo build installer follow steps below for specific platform (please note that\n'browser/images' and 'resources' folders contains graphical files for product\nlogos and icons which are the copyrighted work of Red Hat).\n\n#### Windows\n\n1. Download and install nvm for Windows from \u003chttps://github.com/coreybutler/nvm-windows/\u003e.\nPick the MSI installer.\n\n2. Install nodejs using\n\n        nvm install 6.9.1\n\n3. Download and install Python 2.7.x for Windows from\n\u003chttps://www.python.org/downloads/release/\u003e\n\n4. Edit your \"Path\" by going to the \"System\" Control Panel, \"Advanced system\nsettings\", \"Environment Variables\". Add\n_C:\\Program Files\\nodejs;C:\\Users\\\\\u0026lt;username\u0026gt;\\App Data\\Roaming\\npm_ to the\n\"Variable value\".\n\n   Note that your system might have an \"AppData\" (no space) instead of \"App Data\"\n   (with space) folder, so make sure you use    the correct path for your system.\n\n5. Download and install git for windows from\n\u003chttps://github.com/git-for-windows/git/releases/tag/v2.11.0.windows.1\u003e\n\n6. Run git bash from Windows Start Menu\n\n7. In git bash windows clone installer repository by running\n\n        git clone https://github.com/redhat-developer-tooling/developer-platform-install.git ~/Projects/developer-platform-install\n\n8. Then change current directory to repository root\n\n        cd ~/Projects/developer-platform-install\n\n9. Install required dependencies with\n\n        npm install\n\n10. Build installer executables with\n\n        npm run dist\n\nAfter build is finished ./dist folder should contain Windows executable files\nfor On-line and Bundle Installers.\n\n#### macOS\n\n1. Install git by running\n\n        git\n\n   from bash terminal and then follow the requests to install Xcode Development IDE\n\n2. Run git again to accept the license\n\n3. Install nvm (Nodejs Version Management) by running following shell script\nin bash terminal\n\n        touch ~/.bash_profile\n        curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.6/install.sh | bash\n\n   then restart bash to pick up changes in your environment\n\n4. Install nodejs using nvm command\n\n        nvm install v8.9.1\n\n5. Clone installer repository\n\n        git clone https://github.com/redhat-developer-tooling/developer-platform-install.git ~/Projects/developer-platform-install\n\n6. Then change current directory to repository root\n\n        cd ~/Projects/developer-platform-install\n\n7. Install required dependencies with\n\n        npm install\n\n8. Build installer executables with\n\n        npm run dist:mac\n\nAfter build finishes ./dist folder should contain disk image files (.dmg) with macOS application\npackages for On-line and Bundle Installers.\n\n#### Linux\n\n1. Install git by running\n\n        sudo yum install git\n\n  from terminal\n\n2. Install nvm (Nodejs Version Management) by running following shell script in terminal\n\n        touch ~/.bash_profile\n        curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash\n\n  then restart bash to pick up changes in your environment\n\n3. Install nodejs using nvm command\n\n        nvm install 6.9.1\n\n4. Clone installer repository\n\n        git clone https://github.com/redhat-developer-tooling/developer-platform-install.git ~/Projects/developer-platform-install\n\n5. Then change current directory to repository root\n\n        cd ~/Projects/developer-platform-install\n\n6. Install required dependencies with\n\n        npm install\n\nRunning the application\n-----------------------\n\nThere are multiple ways how to run the installer.\n\n1. When fixing bugs and/or creating new features, run the application using\n\n        npm start\n\n   This way, you can open Chrome developer tools using `Ctrl+Alt+I` or reload\n   application using `Ctrl+R`.\n\n2. Build a Windows binary and run it:\n\n        npm run generate\n        dist/win/DevelopmentSuiteInstaller-win32-x64/DevelopmentSuiteInstaller.exe\n\n3. Build a distribution Windows binary that downloads Vagrant, VirtualBox,\nDevStudio, etc. from the Internet (it will download about 1.6G):\n\n        npm run package-simple\n        dist/win/DevelopmentSuiteInstaller-win32-x64-*.exe\n\n4. Build a distribution Windows binary including almost all dependencies, except\nof Vagrant and VirtualBox (will download them):\n\n        npm run package-bundle\n        dist/win/DevelopmentSuiteInstaller-win32-x64-*-bundle.exe\n\n5. To build both installers in a single step:\n\n        npm run dist\n\nRunning installer behind proxy\n------------------------------\n\nProxy configuration details are available in this issue [#1171](https://github.com/redhat-developer-tooling/developer-platform-install/issues/1171).\n\n\nLocal build with clean up\n-------------------------\n\nIf your npm install gets corrupted (or out of date) and you can't build, you can\ntry cleaning leftover modules by deleting all dependencies and generated\nconfiguration files and installing them again:\n\n    rm -rf node_modules/\n    npm cache clean\n    npm install -g gulp\n    npm install\n\nThen build as in the examples above.\n\nRunning unit tests\n------------------\n\nUnit tests are located in `test/unit`. To run all unit tests:\n\n    npm test\n\nTo run selected unit tests, you can grep any string from `describe` or `it`\nsection of any test, e.g.:\n\n    npm test -- -g login\n    npm test -- --grep login\n\nTo run tests from specific file --spec-file parameter can be used to override\ndefault pattern to select files to run. Parameter value can be specific file\nname\n\n    npm test -- --spec-file test/unit/pages/account/controller-test.js\n\nor globe pattern\n\n    npm test -- --spec-file=test/unit/pages/**/*.js\n\nUnit tests code coverage calculated by Istanbul. By default it generates html\nand raw coverage reports. The report format can be overridden with `--report`\nparameter like shown below\n\n    npm test -- --report cobertura\n\nTo open html coverage report in your default browser after unit tests finished use\n`--open-report` option\n\n    npm test -- --spec-file=test/unit/pages/**/*.js --open-report\n\nRunning unit tests one by one for each installer module\n\n    gulp unit-test-1by1\n\nIf you experience this error when running unit tests\n\n    module.js:598\n     return process.dlopen(module, path._makeLong(filename));\n                 ^\n\n    Error: The specified procedure could not be found.\n    \\\\?\\C:\\p\\rh\\dpi\\node_modules\\keytar\\build\\Release\\keytar.node\n       at Object.Module._extensions..node (module.js:598:18)\n\ninstall 'keytar' module using npm\n\n    npm install keytar\n\nDebugging unit tests\n--------------------\n\nAdd\n\n    debugger;\n\nstatement in test where you want debugger to stop after start. Set env variable\nNODE_PATH pointing to the project's root folder and run\n\n    node_modules\\.bin\\mocha.cmd --inspect --inspect-brk --compilers js:babel-core/register path/to/file-test.js\n\nRunning Angular protractor UI tests\n-----------------------------------\n\nUI tests located in 'test/ui'. To run all UI tests:\n\n    npm run ui-test\n\nDeveloping Angular protractor UI tests\n--------------------------------------\n\nUI tests use [protractor 'browser' global object](http://www.protractortest.org/#/api?view=ProtractorBrowser) and [Jasmine testing framework](https://jasmine.github.io/api/2.6/global).\n\nRunning System (e2e) tests\n--------------------------\n\nSystem tests located in the 'test/system' folder. These tests have requirements\ndepending on the platform they are run on.\n\n#### Windows\nTo run the tests successfully on Windows, you need to have 'Oracle Corporation'\nadded to the list of trusted publishers (otherwise a modal dialog will interrupt\nthe tests when installing VirtualBox). The tests need to be run by a user with\nadministrative privileges.\n\nWhen running the tests locally, use the following command:\n\n    npm run system-test -- --binary=\"path to a DevSuite Installer executable archive\"\n\nFor CI environment a powershell script is available in 'test/system/windows/runTests.ps1':\n\n    powershell -file $devsuiteFolder/test/system/windows/runTests.ps1 -binary \"path to sfx archive\"\n\nThis script launches the tests with elevated privileges and copy the\ninstallation logs into the $devsuiteFolder for archivation in CI environment.\n\nDebugging in Chrome Developer Tools\n-----------------------------------\n\nRun installer with\n\n    npm start\n\nand then push Ctrl + Shift + I to show Chrome Developer Tools in current installer window\n\nTesting online installer\n------------------------\n\n#### With mock server for all downloaded recourses\n\nIn windows System Properties Setting Dialog add\n\n    DSI_REJECT_UNAUTHORIZED=false\n\nto your user environment variables.\nRun notepad.exe as Administrator and add\n\n    127.0.0.1 developers.redhat.com\n\nto C:\\Windows\\system32\\Drivers\\etec\\hosts file.\n\nThen download (VPN connection required) all requirements with\n\n    gulp prefetch-all\n\nWhen download finished run http and https mock servers to mock\ndevelopers.redhat.com with download-manager links. In separate windows run\n\n    node gulp-tasks/http-server.js\n\nand then\n\n    node gulp-tasks/https-server.js\n\nNow you are ready to test online installer. Start\ndist/win/DevelopmentSuiteInstaller-win32-x64-*.exe from package explorer. Mock\nhttp server always returns true for authentication requests to let you pass\naccount information page, but if you plan to install and test CDK in DevStudio\nuse your real Red Hat user name and password from developers.rdhat.com.\n\n#### With mock server for download-manager resources only\n\nIn Windows System Properties Setting Dialog add\n\n    DSI_REJECT_UNAUTHORIZED=false\n    DM_STAGE_HOST=localhost\n\nto your user environment variables.\n\nThen download (VPN connection required) requirements with\n\n    gulp prefetch\n\nWhen download finished run https mock servers to mimic\ndevelopers.redhat.com with download-manager links. In separate windows execute\n\n    node gulp-tasks/https-server.js\n\nNow you are ready to test online installer without actual bits published to\ndownload-manager. Start dist/win/DevelopmentSuiteInstaller-win32-x64-*.exe\nfrom package explorer and use it as you would normally do after release.\n\nRunning online installer with gulp\n----------------------------------\n\nIt is possible to run online installer right from your favorite terminal on windows\nor macOS.\n\n#### Windows\n\nOn Windows if you running from cmd, powershell or git bash console and going to install components\nthat is MSI installers please be sure you started console as Administrator. That is required\nbecause installer starts MSI installers in non-interactive mode and they will fail to run\nwithout Administrative privileges.\n\n#### macOS\n\nOn macOS, installer may request administrative account\ncredentials to continue. So you can run from any bash instance and installer will show request\nfor account with rights to administer current machine.\n\nChanging UserAgent string for HTTP(S) requests\n----------------------------------------------\n\nIf you are developer set DSI_TEST_AGENT to be any truthy string value to get\noriginal user agent string replaced with modified one to avoid interference with\nreal installer usage stats.\n\nDebugging GUI without running actual installation\n-------------------------------------------------\n\nIf you are developing UI and do not really needed to install anything, you can go though all the steps\nquickly using `--skip-install` option when running installer with npm.\n\n``` shell\nnpm start -- --skip-install\n```\n\nUpdating dependencies to latest\n-------------------------------\n\nMost of dependencies declared with exact version. That is required to get\nreproducible build results. To move declared dependencies to latest available\nversions run command below, unit tests, UI tests, dist build and then send regular github.com pull request.\n\n    npm run update-deps\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer-tooling%2Fdeveloper-platform-install","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-developer-tooling%2Fdeveloper-platform-install","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer-tooling%2Fdeveloper-platform-install/lists"}