Welcome to the home of the Perforce Helix Installer project.
Perforce Helix is a unified platform for collaborative development, version management, and protection of intellectual property. It consists of an integrated ecosystem of proven, enterprise-grade systems for versioning, collaboration and code review, continuous integration and delivery, and other aspects of a DevOps pipeline.
Th Helix Installer is capable of quickly transforming a vanilla Linux machine -- virtual, bare metal, Docker container, etc. -- into a near-enterprise-grade deployment of several Helix Server components typically be present in a true enterprise installation. The installation uses the Server Deployment Package (SDP).
The installation is suitable for:
The Helix Installer is alternative to the Helix Enterprise Evaluation virtual appliance (OVA).
The Component Based Development (CBD) system, another project in The Workshop, uses this Helix Installer as part of its automated test suite. In conjunction with Vagrant and Virtual Box, which build a vanilla VM from the ground up, the CBD Test Suite uses the Helix Installer to deploy a Perforce server, complete with Sample Depot test data set, plus Python and P4Python needed to test the CBD scripts.
A slightly modified Helix Installer is a key component of the Battle School Workshop. The Battle School Workshop Lab Engine quickly tears down and spins up a fresh, enterprise-style Helix installation -- and then breaks it in order to simulate real-world problems that students learn to identify and fix. The Battle School version of the Helix Installer (not presently available for public consumption) uses a simulated global topology with replicas and edge servers.
The reset_sdp.sh
script is the only script that should be downloaded. It downloads everything it needs, including other scripts and files from this Helix Installer package, executables from the Perforce FTP site, and the SDP from The Workshop (acquired by cloning).
Once installing a vanilla CentOS 6.7 (or similar) machine, do this as root:
useradd perforce
mkdir -p /hxdepots/reset
chown -R perforce:perforce /hxdepots/reset
cd /hxdepots/reset
curl -k -s -O https://swarm.workshop.perforce.com/downloads/guest/perforce_software/helix-installer/main/src/reset_sdp.sh
chmod +x reset_sdp.sh
./reset_sdp.sh -man
./reset_sdp.sh 2>&1 | tee reset_sdp.log
A similar procedure works for Mac OSX, except that the standard Mac interface is used for creating the perforce
user account rather than the useradd
command, and the chown
command may need to specify a different group (e.g. staff
), depending on the Mac OSX environment.
See the Helix Installer Release Notes.
Helix Installer 2016.1 is available today, and installs the following Helix Components, all fully configured an integrated:
The 2017.1 release is expected to add support for:
The 2017.2 release is expected to add support for:
Helix Git Fusion - enables Git collaboration and access to the Helix Versioning Engine for Git users.
Optimized for easy Git repo insertion. A p4import
user is created and configured with an SSH key, ready to immediately start Git repo imports. A supplemental higf_import
tool imports Git the master branch of a git repos in a single step, needing only the cloning URL as input.
Helix Installer 2016.1 supports:
Future releases may add support for other popular Linux distributions, including those using APT, e.g. Ubuntu and Debian. It may well work as-is presently on other YUM-based installations.
As of February 2017, this project is functional and has been actively used since April 2015. It has been actively maintained to keep pace with SDP changes. However, planned releases to add new features, auto-installing Swarm and Git Fusion support, have been deferred.
Note that this software SHOULD NEVER EXIST on a Production Perforce server. The is intended to quickly tear down and rebuild a fresh Perforce server (e.g. for operating test suites). It should not exist on a machine containing real Perforce data.
It may be useful for doing an initial installation, e.g. to a cloud hosted environment. After the initial install, the reset_sdp.sh script should be removed.
Please [contact Perforce Consulting Services] (mailto:Consulting@Perforce.com) for more information.
# Perforce Helix Installer ("HI") ## Welcome Welcome to the home of the Perforce Helix Installer project. Perforce [Helix](http://www.perforce.com/helix) is a unified platform for collaborative development, version management, and protection of intellectual property. It consists of an integrated ecosystem of proven, enterprise-grade systems for versioning, collaboration and code review, continuous integration and delivery, and other aspects of a DevOps pipeline. Th Helix Installer is capable of quickly transforming a vanilla Linux machine -- virtual, bare metal, Docker container, etc. -- into a near-enterprise-grade deployment of several Helix Server components typically be present in a true enterprise installation. The installation uses the [Server Deployment Package (SDP)](https://swarm.workshop.perforce.com/projects/perforce-software-sdp). The installation is suitable for: * Test suites for Helix server trigger and broker filter scripts deployed in enterprise environments. For example, the [CBD](https://swarm.workshop.perforce.com/projects/perforce-software-cbd) test suite uses the Helix Installer to quickly spin up a test environment for server and triggers * Demonstration * Training * Evaluation and Pilot projects. Because the Helix Installer uses the SDP, translation from the demo-grade installation of the Helix Installer to an enterprise-grade installation is straightforward. The Helix Installer is alternative to the [Helix Enterprise Evaluation virtual appliance (OVA)](http://www.perforce.com/downloads/helix). Features --- * Fast. Runs in under 20 minutes, including download time and building required dependencies. * Easy. Provides reasonable defaults for port numbers, passwords, data storage areas, and all inputs that would otherwise require human interaction. * Comprehensive. Installs P4D and P4Broker, SDP, and a complete development pre-configured environment include Perl, P4Perl, Python, and P4Python, with appropriate shell environment settings to use them all immediately. And more to come -- future versions will include Swarm, Git Fusion, and GitSwarm. * Automates connection to the [Perforce Package Repository](http://package.perforce.com/). * Pre-loads the [Perforce Sample Depot](http://answers.perforce.com/articles/KB/2439), making it instantly ready for training and evaluation purposes. * Simplifies Enterprise Deployment. While optimized for getting going quickly, the Helix Installer is designed to enable a fast path from a Proof of Concept (PoC) to small-scale production deployment following the Helix evaluation, with only a nominal hop from there to a large-scale global enterprise deployment (which requires custom configuration based on the specific global topology). ### Case Study: Sample Usage of Helix Installer in CBD Test Suite The [Component Based Development (CBD)](https://swarm.workshop.perforce.com/projects/perforce-software-cbd) system, another project in The Workshop, uses this Helix Installer as part of its automated test suite. In conjunction with Vagrant and Virtual Box, which build a vanilla VM from the ground up, the [CBD Test Suite](https://swarm.workshop.perforce.com/projects/perforce-software-cbd/files/main/test/auto_test_cbd_vagrant.sh) uses the Helix Installer to deploy a Perforce server, complete with Sample Depot test data set, plus Python and P4Python needed to test the CBD scripts. ### Case Study: Sample Usage of Helix Installer in Battle School Workshop A slightly modified Helix Installer is a key component of the Battle School Workshop. The Battle School Workshop Lab Engine quickly tears down and spins up a fresh, enterprise-style Helix installation -- and then breaks it in order to simulate real-world problems that students learn to identify and fix. The Battle School version of the Helix Installer (not presently available for public consumption) uses a simulated global topology with replicas and edge servers. ### Instructions and Usage Example The `reset_sdp.sh` script is the only script that should be downloaded. It downloads everything it needs, including other scripts and files from this Helix Installer package, executables from the Perforce FTP site, and the SDP from The Workshop (acquired by cloning). Once installing a vanilla CentOS 6.7 (or similar) machine, do this as root: useradd perforce mkdir -p /hxdepots/reset chown -R perforce:perforce /hxdepots/reset cd /hxdepots/reset curl -k -s -O https://swarm.workshop.perforce.com/downloads/guest/perforce_software/helix-installer/main/src/reset_sdp.sh chmod +x reset_sdp.sh ./reset_sdp.sh -man ./reset_sdp.sh 2>&1 | tee reset_sdp.log A similar procedure works for Mac OSX, except that the standard Mac interface is used for creating the `perforce` user account rather than the `useradd` command, and the `chown` command may need to specify a different group (e.g. `staff`), depending on the Mac OSX environment. ## Helix Installer Release Notes See the [Helix Installer Release Notes](https://swarm.workshop.perforce.com/projects/perforce_software-helix-installer/files/main/doc/ReleaseNotes.md). ## Helix Installer Roadmap ### Helix Installer 2016.1 (First formal release, available now) Helix Installer 2016.1 is available today, and installs the following Helix Components, all fully configured an integrated: * P4D 2016.1 - the Helix Versioning Engine, the core of Helix (with or without SSL enabled). * P4Broker 2016.1 - the Helix Broker, enhances custom automation capabilities, simplifies maintenances. * SDP 2016.1 - Server Deployment Package (For managing the SDP). * Sample Depot data set for training, evaluation, and demo, and pilot projects. ### Helix Installer 2017.1 (ETA Q2 2017) The 2017.1 release is expected to add support for: * Helix Swarm - Collaborative web-based code review and continuous delivery. ### Helix Installer 2017.2 (ETA ???) The 2017.2 release is expected to add support for: * Helix Git Fusion - enables Git collaboration and access to the Helix Versioning Engine for Git users. * Optimized for easy Git repo insertion. A `p4import` user is created and configured with an SSH key, ready to immediately start Git repo imports. A supplemental `higf_import` tool imports Git the master branch of a git repos in a single step, needing only the cloning URL as input. ## Platform Support Helix Installer 2016.1 supports: * CentOS/RHEL 6.5 thru 7.3. * Limited support for Mac OSX/Darwin Future releases may add support for other popular Linux distributions, including those using APT, e.g. Ubuntu and Debian. It may well work as-is presently on other YUM-based installations. ## Project Status As of February 2017, this project is functional and has been actively used since April 2015. It has been actively maintained to keep pace with SDP changes. However, planned releases to add new features, auto-installing Swarm and Git Fusion support, have been deferred. ## Safety Warning Note that this software ***SHOULD NEVER EXIST*** on a Production Perforce server. The is intended to quickly tear down and rebuild a fresh Perforce server (e.g. for operating test suites). It should not exist on a machine containing real Perforce data. It may be useful for doing an initial installation, e.g. to a cloud hosted environment. After the initial install, the reset_sdp.sh script should be removed. ## Contact Us Please [contact Perforce Consulting Services] (mailto:Consulting@Perforce.com) for more information.
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#39 | 30497 | C. Thomas Tyler |
Released SDP 2024.1.30495 (2024/07/23). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#38 | 30414 | C. Thomas Tyler |
Released SDP 2024.1.30412 (2024/06/13). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#37 | 30301 | C. Thomas Tyler |
Released SDP 2023.2.30299 (2024/05/09). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#36 | 30046 | C. Thomas Tyler |
Released SDP 2023.1.29958 (2023/12/01). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#35 | 29960 | C. Thomas Tyler |
Released SDP 2023.1.29958 (2023/12/01). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#34 | 29913 | Robert Cowham |
Add warnings at the top that this is not preferred method - too dangerous for inexperiecned users. To be revisited later. |
||
#33 | 29707 | C. Thomas Tyler |
Released SDP 2023.1.29698 (2023/07/11). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#32 | 29618 | C. Thomas Tyler |
Released SDP 2023.1.29616 (2023/05/25). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#31 | 29450 | C. Thomas Tyler |
Released SDP 2022.2.29448 (2023/02/27). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#30 | 29405 | C. Thomas Tyler |
Released SDP 2022.2.29403 (2023/02/06). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#29 | 28931 | C. Thomas Tyler |
Released SDP 2022.1.28929 (2022/07/05). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#28 | 28863 | C. Thomas Tyler |
Released SDP 2022.1.28834 (2022/05/27). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#27 | 28665 | C. Thomas Tyler |
Released SDP 2022.1.28663 (2022/03/08). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#26 | 28415 | C. Thomas Tyler |
Released SDP 2021.4.28409 (2021/11/24). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#25 | 28129 | C. Thomas Tyler |
Released SDP 2021.3.28126 (2021/10/24). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#24 | 27427 | C. Thomas Tyler |
Released SDP 2021.2.27425 (2021/02/09). Copy Up using 'p4 copy -r -b perforce_software-helix-installer-dev'. |
||
#23 | 26976 | C. Thomas Tyler | Minor doc tweaks to README.md | ||
#22 | 26975 | C. Thomas Tyler | Released HelixInstaller 2020.2.26973 (2020/12/01). | ||
#21 | 26031 | C. Thomas Tyler | Released Helix Installer 2019.4.26026 (2019/08/22). | ||
#20 | 25999 | C. Thomas Tyler | Released HelixInstaller 2019.4.25995 (2019/08/20). | ||
#19 | 25871 | C. Thomas Tyler | Released Helix Installer 2019.3.25869 (2019/07/23) | ||
#18 | 25822 | C. Thomas Tyler | Released HelixInstaller/MultiArch/2019.3/25820 (2019/07/11). | ||
#17 | 25725 | C. Thomas Tyler | Released HelixInstaller/MultiArch/2019.2/25723 (2019/06/19). | ||
#16 | 25600 | C. Thomas Tyler | Released HelixInstaller 2019.2.25598. | ||
#15 | 25315 | C. Thomas Tyler |
Released Rev. HelixInstaller/MultiArch/2019.1/25313 (2019/03/07). |
||
#14 | 25284 | C. Thomas Tyler |
Released Rev. HelixInstaller/MultiArch/2019.1/25282 (2019/03/06). |
||
#13 | 25260 | C. Thomas Tyler |
Released Rev. HelixInstaller/MultiArch/2019.1/25250 (2019/03/02). |
||
#12 | 24865 | C. Thomas Tyler | Released HelixInstaller v2018.2.24862. | ||
#11 | 23875 | C. Thomas Tyler | Released HelixInstaller/MultiArch/2018.1/23873. | ||
#10 | 23872 | C. Thomas Tyler | Release HelixInstaller/MultiArch/2018.1/23869. | ||
#9 | 23868 | C. Thomas Tyler | Released HelixInstaller/MultiArch/2018.1/23866 (2018/04/11). | ||
#8 | 23608 | C. Thomas Tyler |
Added 'yum install -y gcc gcc-c++' to avoid getting an error that tells you to do that anyway. |
||
#7 | 23283 | C. Thomas Tyler | Released Helix Installer 2017.4.23281 | ||
#6 | 23009 | C. Thomas Tyler | Tweaked LICENSE copyright year and README.md. | ||
#5 | 21671 | C. Thomas Tyler |
Varios updates to the README.md file: * Corrected to use 'curl' rather than 'p4 print' to get the reset_sdp.sh script, since the 'p4' won't exist on a vanilla CentOS/RHEL box. * Updated to reflect modern SDP, using /hxdepots rather than /depotdata. * Updated Project Status to note that support for Swarm and Git Fusion have been deferred. |
||
#4 | 19266 | C. Thomas Tyler | Minor corrections and typo fixes. | ||
#3 | 19265 | C. Thomas Tyler |
Updated README.md for first formal release. Added Version and doc/ReleaseNotes.md files. |
||
#2 | 19261 | C. Thomas Tyler | Accounted for move to //guest/perforce_software from //guest/tom_tyler. | ||
#1 | 19230 | C. Thomas Tyler |
Populate -o //guest/tom_tyler/helix-installer/... //guest/perforce_software/helix-installer/.... |
||
//guest/tom_tyler/helix-installer/main/README.md | |||||
#5 | 16848 | C. Thomas Tyler | Fixed a typo. | ||
#4 | 16672 | C. Thomas Tyler | Added clear step-by-step usage instructions. | ||
#3 | 16669 | C. Thomas Tyler | Updated README.md file for Helix Installer Project. | ||
#2 | 16410 | C. Thomas Tyler | Updated supported versions. | ||
#1 | 15829 | C. Thomas Tyler |
Moved Helix Installer to new Workshop Standard for personal projects. |
||
//guest/tom_tyler/sw/main/hi/README.md | |||||
#1 | 12335 | C. Thomas Tyler | Copied README.me up to main. | ||
//guest/tom_tyler/sw/dev/hi/README.md | |||||
#1 | 12333 | C. Thomas Tyler | Bootstrapped doc file. |