Skip to content

Conversation

@jbelkins
Copy link
Contributor

@jbelkins jbelkins commented Nov 30, 2022

Issue #

Fixes #708

Description of changes

Our builds on Swift Package Index (SPI) either fail or timeout, resulting in the appearance that our package isn't compatible with any platform or Swift version. I discussed how to fix with the SPI maintainers here.

This PR adds a .spi.yml config file for SPI that does the following:

  • By default the builders are attempting to build all service clients in the SDK, resulting in build timeouts. Specify AWSSTS target for all platforms, which is a small, representative service client that should build quickly and provide adequate proof of compatibility.
  • Specify Swift version for Linux builds, and utilize SPI's Docker build containers which have openssl-dev pre-installed.

I have validated this config file per the instructions here.

New/existing dependencies impact assessment, if applicable

No new dependencies were added to this change.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@jbelkins jbelkins requested a review from epau November 30, 2022 16:59
.spi.yml Outdated
@@ -0,0 +1,22 @@
version: 1
external_links:
documentation: 'https://aws.amazon.com/sdk-for-swift'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Given our current documentation is so out of date, should we remove this for now. We can add it back in after we update our docs.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Link removed. Our page currently has no docs linked (since we don't specify a link and SPI is not building docs for us.). I guess people can get to docs by going to our Github & starting at the README.

builder:
configs:
- platform: macosXcodebuild
target: AWSSTS
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thoughts on AWSS3 or AWSEC2 instead of STS? Just thinking of something a bit more popular

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Those were the two I was trying to avoid because they're so big, lol. They take a very long time to compile, especially the Models.swift in each of those.

I don't think it shows anywhere except in the config file and in the build logs which specific target we build, so it makes no difference to someone looking at our listing.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gotcha, makes sense then!

@jbelkins jbelkins requested a review from epau November 30, 2022 17:21
@jbelkins jbelkins merged commit b3c4166 into main Nov 30, 2022
@jbelkins jbelkins deleted the jbe/spi_config_file branch November 30, 2022 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fix issues on our Swift Package Index listing

2 participants