3 years agorwillyoung created SDP-831 for Doc enhancement: Auto-retrieving useful variables for scripting Hello! We have a number of Power users/build engineers who are not OS level administr...ators of our SDP deployments. They will code scripts, triggers, and extendable functionality that they will then want implemented on the server, either via a cron job or via a trigger (often running from within the depot). We'd like to have a supported and maintained doc that helps people in the above scenarios understand that they can call p4_vars.sh and autopopulate useful variables for their script. This should contain examples with different script languages, including python and bash, and for windows folks powershell. Perhaps even maintaining templates that they can build their scripts/triggers on. Lastly if the doc could include simplified (user centric) steps on "you can ask your administrator to modify this file to implement your own variables that are called when p4_vars.sh is run", or if you have access yourself here's how to do it. « | ||
Add a comment | ||
3 years agorwillyoung commented on SDP-830 for Suggestion: Keep a parse able hardware rule list on a webserver and have the SDP automatically fetch this. As you can get recommendations based on dif ...Suggestion: Keep a parse able hardware rule list on a webserver and have the SDP automatically fetch this. As you can get recommendations based on different hardware platforms you can update them and the SDP can dynamically catch these. « | ||
3 years agorwillyoung created SDP-805 for Add a flag to verify_sdp.sh to email the results to the admin. After I deploy a helix server with the helix installer, I might want to check if emai...l is working. Sure there's other tools to do that (like the mail command) but I think it'd be cool to just run verify_sdp.sh. Other more useful use case: something we can easily forward to support or consulting. « | ||
3 years agorwillyoung created HI-99 for perforce_software-helix-installer: | ||
3 years agorwillyoung commented on review 28888 for perforce_software-helix-installer:dev Hey Tom! So when I ran the helix installer I expected that at the end of my run I'd have a p4d and p4broker with(or without) ssl running and be immedi ...Hey Tom! So when I ran the helix installer I expected that at the end of my run I'd have a p4d and p4broker with(or without) ssl running and be immediately usable. That didn't happen and I'm a bit surprised that the inability to find/run verify_sdp.sh (bogus or not) resulted in the helix installer not:
So you're saying this one little hiccup prevented the above from happening (cascaded the problem?)? « | ||
3 years agorwillyoung commented on SDP-755 for Sounds reasonable! | ||
3 years agorwillyoung commented on SDP-755 for I guess my question becomes, how long does a problem need to exist before "temporary" becomes something worth addressing via a supported script? And c ...I guess my question becomes, how long does a problem need to exist before "temporary" becomes something worth addressing via a supported script? And can that length of time be standardized? « | ||
3 years agorwillyoung commented on SDP-755 for So I'm not familiar with any particular bugs that cause files to not replicate. Given the built in system of tracking what has and hasn't been transf ...So I'm not familiar with any particular bugs that cause files to not replicate. Given the built in system of tracking what has and hasn't been transferred and the existence of commands to clear that cache and then reschedule, I thought that this was setup this way by design. I'd love to see them improve p4d to handle this natively. But it's been a few years with the status quo, and I don't have any feedback on when that might change. Today the SDP will send an email alert to the admin. The admin can then manually intervene. So the existing process is monitor and alert only. But this is something that I feel should be: monitor, retry, alert if the retry fails. « | ||
3 years agorwillyoung created SDP-756 for p4_vars should have a flag to ignore "Open for write" permission denied errors to facilitate read-only scripting. For read only workflows (create a... monitoring service user in the OS) we don't "care" that we can't write to some directories. The extra output in "error" format is not helpful for catching other relevant error data in a script. source /p4/common/bin/p4_vars 1 Perforce server error: open for write: /p4/1/logs/triggers.csv: Permission denied Perforce server error: open for write: /p4/1/logs/errors.csv: Permission denied Perforce server error: open for write: /p4/1/logs/events.csv: Permission denied Perforce server error: open for write: /p4/1/logs/integrity.csv: Permission denied Perforce server error: open for write: /hxlogs/p4/1/frankfurt/logs: Permission denied Perforce server error: open for write: /p4/1/logs/journal: Permission denied Error error: open for write: /p4/1/logs/events.csv: Permission denied Perforce server error: open for write: /p4/1/logs/triggers.csv: Permission denied Perforce server error: open for write: /p4/1/logs/errors.csv: Permission denied Perforce server error: open for write: /p4/1/logs/events.csv: Permission denied Perforce server error: open for write: /p4/1/logs/integrity.csv: Permission denied Perforce server error: open for write: /hxlogs/p4/1/frankfurt/logs: Permission denied Perforce server error: open for write: /p4/1/logs/journal: Permission denied Error error: open for write: /p4/1/logs/events.csv: Permission denied « | ||
3 years agorwillyoung created SDP-755 for | ||
3 years agorwillyoung created SDP-753 for recreate_offline_db.sh comment text does not consider replicas. # This script recreates offline_db files from the latest checkpoint. If it fails, the...n # check to see if the most recent checkpoint in the /p4/INSTANCE/checkpoints directory is # bad (ie doesn't look like the right size compared to the others), and if so, delete it # and rerun this script. If the error you are getting is that the journal replay failed, # then the only option is to run live_checkpoint.sh script. If it's an edge server or replica, you could simply run "p4 admin checkpoint -Z" and deal with the issue the next day. « | ||
3 years agorwillyoung commented on SDP-743 for Very interested in this! | ||
3 years agorwillyoung commented on SDP-752 for [perforce@aws-p4rcgt02 bin]$ ./recreate_offline_db.sh --help [perforce@aws-p4rcgt02 bin]$ ./recreate_offline_db.sh --help | ||
3 years agorwillyoung created SDP-752 for recreate_offline_db.sh does not have a help/man page. Even if there isn't useful information to be displayed, I've gotten into a habbit of running t...he script with the --help or --man flag. It would be useful if all scripts had this flag for consistency reasons, even if the output would be a link to the SDP page with the script. « | ||
3 years agorwillyoung commented on SDP-721 for I'm interested in this. | ||
3 years agorwillyoung commented on SDP-739 for As the main product (helix core) is moving in the direction of actually checking certificate chains and accepting the OS root CA, more business will o ...As the main product (helix core) is moving in the direction of actually checking certificate chains and accepting the OS root CA, more business will opt to using publically signed SSL certs for their perforce infrastructure. Public certs tend to expire more rapidly than the ones issued by the self signed process. To ensure that there isn't an incident affecting the availability of a perforce server due to expired certificates, a server health check should run to warn if a certificate is going to expire soon. « | ||
3 years agorwillyoung created SDP-739 for Server health checks should verify and warn if SSL certificates used by the server are close to being expired | ||
3 years agorwillyoung commented on SDP-738 for Perhaps not well worded on my part - but I was poking at the /cloud/aws script for snapshots and realized my installation of perforce SDP doesn't have ...Perhaps not well worded on my part - but I was poking at the /cloud/aws script for snapshots and realized my installation of perforce SDP doesn't have the required utilities to run the script. Perhaps including these utilities as a setup option when first deploying the SDP would be wise? « | ||
3 years agorwillyoung created SDP-738 for Add the pre-requisites/requirements to utilize the cloud scripts as part of the setup/installation of the SDP. | ||
3 years agorwillyoung created SDP-714 for upgrade.sh should have a preflight to validate proper ownership of directory and files in /tmp I have an instance that I created with the helix ins...taller. I initially installed r21.1. I tried to upgrade to r21.2 and it failed to start the service. I later discovered that if I set the ownership of /tmp to be perforce:perforce the upgrade would work. « | ||
3 years agorwillyoung created SDP-712 for | ||
3 years agorwillyoung modified SDP-711 for | ||
3 years agorwillyoung created SDP-711 for | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev New find: After deploying a perforce proxy service using the helix installer - if you run this: ./reset_sdp.sh -B -R 2>&1 | tee log.reset_sdp.w ...New find: After deploying a perforce proxy service using the helix installer - if you run this: ./reset_sdp.sh -B -R 2>&1 | tee log.reset_sdp.wipe At the end of the run, it won't clean up any services for p4broker or p4d_1 in systemd. « | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev New find - after running helix installer for setting up a p4p, the reset_sdp.sh does not move itself to reset_sdp.sh.txt and remove the +x modifier. H ...New find - after running helix installer for setting up a p4p, the reset_sdp.sh does not move itself to reset_sdp.sh.txt and remove the +x modifier. However that functionality does happen for other server types. « | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev Without over complicating the helix installer - is there an easy way to have a preflight that checks for issues with known workarounds and prompt the ...Without over complicating the helix installer - is there an easy way to have a preflight that checks for issues with known workarounds and prompt the user to visit the job/issue on the workshop? Maybe you host on the workshop a dynamic list that is fetched that features the necessary checks for each issue, and is automagically removed from the dynamic list when the associated job is closed? « | ||
3 years agorwillyoung updated description of review 28267 for perforce_software-helix-installer:dev | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev I otherwise do have a functional proxy that is pointed at the right p4 target and setup to cache data. I'll call this working with minor issues. | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev The binaries for a broker were downloaded, and the p4port for a broker was set as ssl:1666. However no broker service exists. I understand that a brok ...The binaries for a broker were downloaded, and the p4port for a broker was set as ssl:1666. However no broker service exists. I understand that a broker is standard in an sdp deployment, is that also true for a p4 proxy though? Either way, this bit needs some cleanup. | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev Unsure if this is intended for a helix installer deployment of a p4p: There was no crontab setup. Either this is intended or a feature enhancement sho ...Unsure if this is intended for a helix installer deployment of a p4p: There was no crontab setup. Either this is intended or a feature enhancement should be to add the crontab that will do the p4 proxy cleaning script? « | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev Here is a 'redacted' output of my ENV as the 'perforce' user: AWK=awk Here is a 'redacted' output of my ENV as the 'perforce' user: AWK=awk | ||
3 years agorwillyoung commented on review 28267 for perforce_software-helix-installer:dev So I'm not totally familiar with a review process (not a programmer). here's a list of things that went wrong:
So I'm not totally familiar with a review process (not a programmer). here's a list of things that went wrong:
Warning: No ServerID defined for server of type p4proxy. Defaulting to p4proxy as the ServerID.
Running: /p4/1/bin/p4p_1 -Gc Warning: Failed to generate SSL Certificates. Preparing to run Sample Depot configuration script. Skipping configuration of Sample Depot due to '-no_sd'. Adding Perforce's packaging key to RPM keyring. Configuring Firewalld services. sed: can't read /hxdepots/reset/p4p_N.xml.t: No such file or directory Error: Failed to generate /etc/firewalld/services/p4p_1.xml. « | ||
3 years agorwillyoung commented on HI-80 for Additional alternative (easier) - when using a settings.cfg file, maybe add some additional text to the comments to note that if you want the demo con ...Additional alternative (easier) - when using a settings.cfg file, maybe add some additional text to the comments to note that if you want the demo content, you should keep this case sensitivity as 1 « | ||
3 years agorwillyoung created HI-80 for perforce_software-helix-installer: When running the helix installer and specifying a settings.cfg. It is possible to tell it to run in a different case sensitivity. We normally standard...ize all our installations and testing on the same sensitivity as Windows. In one case however, I set this sensitivity and then wanted the demo content. The helix installer failed to restore the demo content because of the case sensitivity of the demo checkpoint. Either the helix-installer needs to fail out during a preflight when installing the demo content with the wrong case sensitivity or you need to detect and supply a checkpoint that works with Windows case sensitivity. « | ||
3 years agorwillyoung commented on HI-27 for Hey Tom! The current helix installer settings.cfg and man page make reference to this, but you have this open job. Can the helix installer do this and ...Hey Tom! The current helix installer settings.cfg and man page make reference to this, but you have this open job. Can the helix installer do this and does this job just need to be closed? If not - perhaps removing such references until this functionality exists? By the way, I'd be super stoked to have a run one script to setup a proxy. Looking forward to this! « | ||
3 years agorwillyoung commented on SDP-701 for Side plus - a solution that is more "product baked in" is more cross platform friendly. I know Microsoft is going to go the route of using ssh in the ...Side plus - a solution that is more "product baked in" is more cross platform friendly. I know Microsoft is going to go the route of using ssh in the future... but "for now" - You'd be building a cross platform solution out of the gate if you relied on things common to the product like counters keys and properties, and built in perforce commands / bgtask triggers rather than ssh. « | ||
3 years agorwillyoung commented on SDP-701 for I would say that this is not something that should get in the way of progress. But as a customer looking for "a completely integrated solution that is ...I would say that this is not something that should get in the way of progress. But as a customer looking for "a completely integrated solution that is baked into the product" - less infrastructure setup need and more brainless "run this script and the product will take care of itself" is desired. CSO groups are going the route of requiring that SSH keys get rotated, secrets management, etc. Baking something into the product reduces complexity for the customer. I would steam ahead to get something delivered and a complete product. and version 2.0 of this should have an option that doesn't require SSH. « | ||
3 years agorwillyoung commented on SDP-701 for One more item: Add "optional" call to back end storage to do a storage level snapshot at the right moment. | ||
3 years agorwillyoung commented on SDP-701 for Idea to "get around" needing SSH access to all the servers in the farm tree: Idea to "get around" needing SSH access to all the servers in the farm tree: | ||
3 years agorwillyoung created SDP-704 for mirror_ldap_groups.pl.html doc enhancement request: Please include a better real world example with 5-10 groups and a configuration that honors "grou...p nesting". User is a member of Group A. Group A is a member of B. B is a member of C. What does C's total membership look like? What would that ldap string look like (this is complex for a lot and while we understand Perforce doesn't want to go down the rabbit hole of AD support - providing an example here is helpful). « | ||
3 years agorwillyoung created SDP-703 for | ||
3 years agorwillyoung commented on change 28179 for perforce-software-sdp:dev Also - if we're going to continue along the path of "% free space" - perhaps logging the files that get removed and doing a diff/compare on future run ...Also - if we're going to continue along the path of "% free space" - perhaps logging the files that get removed and doing a diff/compare on future runs to see if the same files frequently get deleted? This may encourage the administrator to provision more space because "If the same files are always being deleted and then getting requested for replication (coming back) - it means that they are needed files" - if the files are needed, something should be done to reduce the frequency at which they are deleted. « | ||
3 years agorwillyoung commented on change 28179 for perforce-software-sdp:dev I'd like to have a discussion around this script/idea (as it's a much needed script). The question I have to ask is this: Is it functionally more usef ...I'd like to have a discussion around this script/idea (as it's a much needed script). The question I have to ask is this: Is it functionally more useful to specify a % of disk space you want to always have free or is it functionally more useful to have a "number of revisions" kept? If I setup a script to make sure I always have at least 20% free, I could be artificially creating a performance problem by removing revisions my end users need. Those files would be requested "on demand" and the user would have to wait for them to replicate back over, only to wind up being deleted again. In our view - we see that keeping the latest X revision (usually the head and only the head) is the leanest way to go and solves the performance need for the syncing of data, since we're never accidently deleting a revision that is needed. The trouble with this approach is that provisioning too little storage (to save on storage) and requiring the script/cron to run more frequently eats at CPU cycles. Cachepurge can be a heavy/CPU taxing operation on smaller AWS instance sizes. I placed an enhancement request to the product a long while ago suggesting that p4 pull should take care of this automatically as part of replication. I hope that goes onto the roadmap, but understand that this script is a good workaround for now. Still - the above discussion poses a challenge of approach. If you can reduce the overhead of running this more frequently "somehow" and set the target of keeping X revisions instead of X percent free space, then administrators can allocate less storage overall and save on storage costs. « | ||
3 years agorwillyoung commented on SDP-692 for You're making me think a little here - we always setup a VPN to edge servers in AWS. Does p4d perform better over SSL over wan (replication of metadat ...You're making me think a little here - we always setup a VPN to edge servers in AWS. Does p4d perform better over SSL over wan (replication of metadata/archives) than over a standard AWS vpn? This could simplify some of our deployments. I guess my original ask was just to make it easier for a newbie to the SDP to address this situation and I was trying to solve a problem that is "easily solved with training an understanding of the SDP" with a technical fix that addresses this particular situation. Philosophically when someone first touches the SDP and gets into it (without helix installer) one of the first things they play around with is mkdirs.cfg. Addressing the many common scenarios directly in there without requiring the person to go back and forth to read the doc may make it easier for sdp adoption. « | ||
3 years agorwillyoung commented on SDP-692 for So if I am understanding correctly, you're suggesting that the communications between the p4d and p4brokers should all be SSL if you enable SSL. You c ...So if I am understanding correctly, you're suggesting that the communications between the p4d and p4brokers should all be SSL if you enable SSL. You can then put forth a p4broker that is not SSL (as a second broker/third overall service) that is not SSL and allow users to connect to it. I am about to make a couple of assumptions, and I may very well be wrong so feel free to correct me! If a user connects to a broker without SSL that is then pointed at an SSL enabled p4d, the broker and the p4d handle the decryption of the data. When the majority of end users are connected in this manner, there "must" be an overhead cost to this rather than simply having the p4d not be SSL enabled. In contrast, I have a small amount of users external to the company (about 15-20 per p4d/edge) that need to be SSL. So those will connect to the SSL enabled broker. The overhead there makes sense because it is for tighter security. I understand this overhead is "small" in all cases, and I might be asking for "too much". I will say that if I was to migrate an existing p4d to the SDP today we already have cases where users (main office 150+ users) connect to p4d at port 1666 and a broker on another port has SSL for a DMZ like experience. So I would not want to convert my p4d to be SSL because that would be office user impacting. It becomes functionally useful to have a variable in the SDP mkdirs.cfg / p4_vars that you can set as a bool $OnlyPrimaryBrokerSSL. As it stands, when setting SSL_PREFIX=ssl: in mkdirs.cfg, all the other variables that result from running mkdirs.sh will take on a result like: Hence my "all or nothing" when setting up a new SDP, and a lot of manual intervention to get it to be in line with my use case. « | ||
3 years agorwillyoung created job000752 for perforce-software-p4api-net: Please add support for using a credential object and/or a securestring for passing a password to login. | ||
3 years agorwillyoung commented on SDP-697 for I ran upgrade.sh without doing a -n first and ran into an issue because the user running the upgrade didn't have enough access to stop/start the perfo ...I ran upgrade.sh without doing a -n first and ran into an issue because the user running the upgrade didn't have enough access to stop/start the perforce service, so the upgrade script hung and was uncrecoverable. I had to proceed with a manual upgrade after that point. « | ||
3 years agorwillyoung created SDP-697 for | ||
3 years agorwillyoung commented on SDP-397 for Add me to this. I'd like to be able to reliably deploy perforce proxies using the SDP and helix installer. | ||
3 years agorwillyoung commented on SDP-667 for +1 for this. I ran upgrade.sh without doing a -n first and ran into an issue because the user running the upgrade didn't have enough access to stop/st ...+1 for this. I ran upgrade.sh without doing a -n first and ran into an issue because the user running the upgrade didn't have enough access to stop/start the perforce service, so the upgrade script hung and was uncrecoverable. « | ||
Adjust when notifications are sent to you about reviews that you're associated with (as an author, reviewer, project member or moderator).