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

Run dotnet core buildpack test with published app versions for different stacks #610

Merged
merged 2 commits into from
Sep 30, 2022

Conversation

mariash
Copy link
Member

@mariash mariash commented Sep 30, 2022

Are you submitting this PR against the develop branch?

Yes

What is this change about?

dotnet core buildpack will reach NuGet registry for unpublished apps to get dotnet core library. That makes this test fail in internetless environment. Switch to using published app (e.g. vendor everything). Published apps need to be compiled for the runtime they will be running on, so there are 2 published versions included for cflinuxfs3 and cflinuxfs4.

Makefile is provided to help rebuild those versions in case of code changes.

Please provide contextual information.

Slack thread https://vmware.slack.com/archives/CUR2H2KFE/p1663189449408889

What version of cf-deployment have you run this cf-acceptance-test change against?

e8130a2c616c4c27e215030e571dc441409f9f5b

Please check all that apply for this PR:

  • introduces a new test --- Are you sure everyone should be running this test?
  • changes an existing test
  • requires an update to a CATs integration-config

Did you update the README as appropriate for this change?

  • YES
  • N/A

How many more (or fewer) seconds of runtime will this change introduce to CATs?

It actually makes it faster because it skips compilation and fetching dependencies during staging.

What is the level of urgency for publishing this change?

  • Urgent - unblocks current or future work
  • Slightly Less than Urgent

Unpublished dotnet app needs access to NuGet registry, even for apps
that have no dependencies. dotnet-core buildpack is running `dotnet
publish` on unpublished apps and that runs nuget restore which pulls
dotnet core and asp net core libraries from registry.

Published apps need to be published on the same distribution where they
are going to run. E.g. cflinuxfs3 apps need to be published on ubuntu
18.04.
detect/buildpacks.go Show resolved Hide resolved
* add Makefile to generate cflinuxfs3 and cflinuxfs4 versions
@mariash mariash force-pushed the dotnet-published-on-18.04 branch from 0e2e0ea to 42912bd Compare September 30, 2022 21:52
@ctlong ctlong merged commit 2b39261 into cloudfoundry:develop Sep 30, 2022
@jochenehret
Copy link
Contributor

We've just noticed that this PR introduces a large amount of resource files to the assets/dotnet-core/cflinuxfs3 test. This can cause problems when pushing the application. In one of our test environments, we run into a HTTP 504 gateway timeout for the POST /v3/resource_matches request. I had to increase the AWS load balancer idle timeout to make the test pass. Here's a link to the failed test: https://app-runtime-deployments.ci.cloudfoundry.org/teams/main/pipelines/cf-deployment/jobs/experimental-cats/builds/41

Are you aware of this problem? Can you reduce the application's resources?

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.

3 participants