# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#44 | 18236 | tjuricek | Add automation to deploy the binary archive (Linux-only right now) and remove build.sh wrapper. | ||
#43 | 18234 | tjuricek |
Switched to gradle to drive the "hws.archive" build logic. While not absolutely critical, the main build system logic now runs on all OSes. The main trick is to understand that testing tasks can list a "finalizer" dependency to clean up even in the case of failure. The RVM logic will be "pushed out" into the build.conf. Given that we only need Ruby for mock_raymond (the Helix Cloud tests) this isn't that crazy. |
||
#42 | 18233 | tjuricek | Correct path to where the archive file seems to be stored in the EC system | ||
#41 | 18210 | tjuricek |
Switch to building RPMs via rpmbuild. The install4j .rpm works, but, doesn't give you access to metadata fields that are pretty important to repository managers. (Their workflow is that the user downloads the rpm and just installs it, which means no "yum install helix-web-services".) |
||
#40 | 18173 | tjuricek | unpack in /opt/perforce with elevated privileges | ||
#39 | 18170 | tjuricek | Add missing cd command to get into the expected directory before unpacking the installation. | ||
#38 | 18167 | tjuricek | Removing dependency on ruby for testing binary archives, and adding an ls statement for now to double check the configuration of the underlying system. | ||
#37 | 18166 | tjuricek | Adjust the command line parser to accept the test-binary-archive step in build.sh. | ||
#36 | 18165 | tjuricek |
First pass at a .deb package that seems to meet packaging standards. I'm basing this information on two wiki pages: https://confluence.perforce.com:8443/display/IP/Package+Naming+Approach https://confluence.perforce.com:8443/display/IP/Packages+Standards Note: This .deb shouldn't be necessarily specific to the ubuntu version, ergo, there is no "~trusty". |
||
#35 | 18036 | tjuricek |
Add automated testing for the "binary" archive installation for Linux; revised CD process for new archives. The CD process will generate both binary archives and "raw" packages for the system now. (Note: only the binary archives for Linux are considered ready for automated testing at the moment.) |
||
#34 | 17326 | tjuricek | Adding PDF output format type. | ||
#33 | 17325 | tjuricek | Add additional cd command to change location before copying more artifacts to their final locations. | ||
#32 | 17324 | tjuricek | Add DocBook output and applied company toolchain to main user guide. | ||
#31 | 17272 | tjuricek | Altering references to projects that are not required by the primary web service. | ||
#30 | 17225 | tjuricek | Adding hws-internal documentation for internal users. | ||
#29 | 17155 | tjuricek |
Only running asciidoctor for now. We may eventually add javaDoc, or even the Ruby client, but there's no particular organization around that yet. |
||
#28 | 17154 | tjuricek |
Move tarball generation into gradle from Rake. There may yet be issues with Ruby dependencies in the new build process, but this should be easier. I'm leaving the rake tasks in there for now, since I haven't purged all Ruby logic any way. |
||
#27 | 17153 | tjuricek |
Add special methods to match the osplat setting to our internal OS platform FTP naming scheme. Also, don't fail tests until after the cleanup method has run. |
||
#26 | 17144 | tjuricek |
Prepare build for java-land / Ignore trust settings for non-SSL connections. build.sh now depends upon java basically being correctly installed. (Java 8 JDK with JCE for p4 SSL connections.) |
||
#25 | 17099 | tjuricek |
Extract tarballs before running package commands. Tar seems to preserve a lot of file permissions our tools do not by default, and there's too many (10k) for me to efficiently handle. |
||
#24 | 17092 | tjuricek | Configure logrotate during post-install configuration. | ||
#23 | 17088 | tjuricek |
Fixing build.sh problems with release notes. The 'package' task seems to magically call my other rake tasks to copy files, which doesn't quite make sense. So guard those tasks by only copying if the file doesn't already exist. We get failures in the build since our clients are readonly by default. |
||
#22 | 17087 | tjuricek | Moving release notes to the (codeline)/p4-doc/user directory. | ||
#21 | 17084 | tjuricek |
Call 'rake Version' explicitly For whatever reason the Rake task dependency chain seems to call 'Version' after 'package' when running rake build. This actually seems somewhat inconsistent behavior, because it worked just fine in my environment. |
||
#20 | 17079 | tjuricek |
Remove publication to geminabox.das.perforce.com due to unreliability. Users will have to do this themselves as needed. |
||
#19 | 17075 | tjuricek | Setting writable, not executable, for version file we update. | ||
#18 | 17074 | tjuricek | Move where we log encoding information | ||
#17 | 17073 | tjuricek | Echoing out the chmod +x call just to assist in determing what might be a problem with the clientgem task | ||
#16 | 17072 | tjuricek |
Add encoding information from the Ruby interpreter. This may help us debug observed issues happening when running under EC automation. |
||
#15 | 17070 | tjuricek | Move user cleanup to after the package removal | ||
#14 | 17067 | tjuricek | Not all OSes use /var/cache/nginx, only tweak it if it exists | ||
#13 | 17066 | tjuricek |
Fix test in case package is not installed. Bash is strange. |
||
#12 | 17065 | tjuricek |
More installer workflow fixes. On CentOS 6, if you're testing and need to build an archive, you'll need the /var/cache/nginx directory writable by the current user. Also, check to see if packages are installed before cleaning up, to prevent EC from interpreting uninstall cleanup commands as build errors. |
||
#11 | 17060 | tjuricek |
Remove the pkg/ directory before building the tarball. If it's not removed, we seem to not always get updated. This can happen when, say, testing things out. |
||
#10 | 17058 | tjuricek |
Alter omnibus build to meet our current naming conventions. The strange bit here is that the 'build_iteration' includes the architecture name on debian, but on rpms, we generate it in the omnibus level. This may confuse people. See also: https://confluence.perforce.com:8443/display/IP/Package+Naming+Approach#PackageNamingApproach-LinuxPackageNamingApproach |
||
#9 | 17057 | tjuricek | Fix the way the default value for LOCAL_RVM gets set. | ||
#8 | 17055 | tjuricek |
Add checks to ensure that preparation of the omnibus working directories is correct. Also, use spaces, not tabs. |
||
#7 | 17052 | tjuricek |
Create a './build.sh clientgem' task. This will version, build, and publish the helix_web_services_client gem, and should consume the tested tarball. |
||
#6 | 17050 | tjuricek |
Always clean when exiting the build. I thought trapping EXIT would handle this, but it doesn't seem to. |
||
#5 | 17049 | tjuricek | Unsetting RELEASE environment variable during build.sh, as it creates problems for OpenSSL builds. | ||
#4 | 17048 | tjuricek |
Add OMNIBUS_DEBUG environment variable hook for more information. Set OMNIBUS_DEBUG to something like '--log-level debug' for more information. |
||
#3 | 17047 | tjuricek | Add /opt/perforce/helix-web-services to cleanup step, add messages | ||
#2 | 17046 | tjuricek |
Fixes for the './build.sh install' process. - Try to work under /opt/perforce/helix-web-services instead of just /opt/perforce. This will uninstall other products. - Minor fixes to when sudo access is actually needed |
||
#1 | 17044 | pmcnab | TL-793 Adding build.sh and hws.installer build (currently disabled) |