aws-games / cloud-game-development-toolkit

A collection of infrastructure as code templates and configurations for deploying game development infrastructure on AWS
https://aws-games.github.io/cloud-game-development-toolkit/
MIT No Attribution
38 stars 8 forks source link

Bug: Perforce Helix Core fails without HAS #218

Closed henrykie closed 2 months ago

henrykie commented 2 months ago

Expected Behaviour

When no helix_authentication_service_url is specified in the Helix Core module the HAS extension should not be configured.

Current Behaviour

When no helix_authentication_service_url is specified the HAS extension attempts to configure against a null URL and fails thus preventing Helix Core startup.

Possible Solution

Adjust the p4_configure.sh script and the user_data in the Helix Core module to support null HAS URL variables.

Steps to Reproduce

Provision a helix core server module without specifying helix_authentication_service_url

Cloud Game Development Toolkit version

latest

henrykie commented 2 months ago

@GrzesiekO want to take a stab at this?

GrzesiekO commented 2 months ago

Sure

henrykie commented 2 months ago

/var/log/p4_configure includes the HAS extension configuration logging, and that is where I was able to detect the failure. Maybe we need to pass arguments to p4_configure shell script with flags to handle null values?

GrzesiekO commented 2 months ago

/var/log/p4_configure includes the HAS extension configuration logging, and that is where I was able to detect the failure. Maybe we need to pass arguments to p4_configure shell script with flags to handle null values?

I have a fix with extended configuration for the p4_configure so instead of providing raw values in parameters it will use these flags: --nfs hxmetadata=<>, hxlogs=<>, hxdepots=<> --ebs hxmetadata=<>, hxlogs=<>, hxdepots=<> --auth user=<>, passwd=<> --has hasurl=<>

henrykie commented 2 months ago

we still need p4d type (master or replica). I am also getting some strange startup behavior - should p4_setup report successful binary installation? The last message it reports is missing p4 binary, and then it attempts to download missing binaries.

GrzesiekO commented 2 months ago

Fixed in PR #239 all features added: Arm64 support Long parameters for p4_configure: "Options:" --p4d_type Specify the type of Helix Core server (p4d_commit, p4d_replica, p4d_edge)" --username AWS Secrets Manager secret ARN for the Helix Core admin username" --password AWS Secrets Manager secret ARN for the Helix Core admin password" --auth Helix Authentication Service URL" --fqdn Fully Qualified Domain Name for the Helix Core server" --hx_logs Path for Helix Core logs device or share" --hx_metadata Path for Helix Core metadata device or share" --hx_depots Path for Helix Core depots device or share"

GrzesiekO commented 2 months ago

Fixed as per above and PR #239