Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a Construct to supply Deadline installers #176

Closed
2 tasks done
horsmand opened this issue Oct 14, 2020 · 2 comments · Fixed by #175
Closed
2 tasks done

Create a Construct to supply Deadline installers #176

horsmand opened this issue Oct 14, 2020 · 2 comments · Fixed by #175
Labels
feature-request A feature should be added or improved.

Comments

@horsmand
Copy link
Contributor

We would like a construct which determines the S3 URI's for the Deadline installers and Deadline Docker recipes. The version of Deadline for these can be either specified by the user or defaulted to the latest version.

For now, this will be integrated with the Repository construct to get the repository installer for it to use. In the future we can extend it out to be used by other constructs that require Deadline installers or the Docker recipes as well.

Use Case

Currently to get the repository installer, we use hard-coded values that make assumptions about where the installer should be found in S3:

const installerBucket = Bucket.fromBucketName(this, 'ThinkboxInstallers', ExactVersion.INSTALLER_BUCKET);
const { majorVersion, minorVersion, releaseVersion, patchVersion } = versionComponents;
this.majorVersion = majorVersion;
this.minorVersion = minorVersion;
this.releaseVersion = releaseVersion;
const fullVersionString = this.fullVersionString(patchVersion);
const objectKey = `Deadline/${fullVersionString}/Linux/DeadlineRepository-${fullVersionString}-linux-x64-installer.run`;
this.linuxInstallers = {
patchVersion,
repository: {
s3Bucket: installerBucket,
objectKey,
},
};

This would provide a more robust way of determining the installer locations

Proposed Solution

A VersionQuery Construct that contains a CustomResource that downloads the version index file and parses it, then returns the required information about the installers for a specific Deadline version.

The Repository construct will then take the versioned installers supplied by the VersionQuery construct, and use the repo installer.

  • 👋 I may be able to implement this feature request
  • ⚠️ This feature might incur a breaking change

This is a 🚀 Feature Request

@horsmand horsmand added the feature-request A feature should be added or improved. label Oct 14, 2020
horsmand referenced this issue in horsmand/aws-rfdk Oct 15, 2020
Fixes #176

BREAKING CHANGE: The version parameter in the RenderQueue constructor
properties was removed and the one taken by the Repository constructor
was modified to use the new VersionQuery construct.
horsmand referenced this issue in horsmand/aws-rfdk Oct 23, 2020
horsmand referenced this issue in horsmand/aws-rfdk Oct 28, 2020
@zxkane
Copy link

zxkane commented Nov 3, 2020

Any plan to mirror the deadline installers to other aws partitions?

@jusiskin
Copy link
Contributor

jusiskin commented Nov 4, 2020

@zxkane - Thanks for reaching out! I've taken your feature request and made a separate issue (#207).

horsmand added a commit that referenced this issue Nov 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request A feature should be added or improved.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants