Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 48 additions & 2 deletions .github/workflows/dotnet-sample-app-s3-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,11 @@ jobs:
'ap-southeast-2','ap-southeast-3','ap-southeast-4','ca-central-1','eu-central-1','eu-central-2','eu-north-1',
'eu-south-1','eu-south-2','eu-west-1','eu-west-2','eu-west-3','il-central-1','me-central-1','me-south-1', 'sa-east-1',
'us-east-1','us-east-2', 'us-west-1', 'us-west-2' ]
dotnet-version: [ '6.0', '8.0' ]
runs-on: ubuntu-latest
env:
DEFAULT_VERSION: '8.0'
DOTNET_VERSION: ${{ matrix.dotnet-version }}
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -42,13 +46,55 @@ jobs:
role-to-assume: arn:aws:iam::${{ env.ACCOUNT_ID }}:role/${{ secrets.E2E_TEST_ROLE_ARN }}
aws-region: ${{ matrix.aws-region }}

- name: Update .NET version if not default
working-directory: sample-apps/dotnet
run: |
if [ "${DOTNET_VERSION}" != "${DEFAULT_VERSION}" ]; then
echo "Updating .NET version from ${DEFAULT_VERSION} to ${DOTNET_VERSION}"

# Function to update version in files
update_version() {
local file=$1
if [ ! -f "$file" ]; then
echo "Error: File $file not found"
exit 1
fi

# Update TargetFramework in csproj files
if [[ $file == *.csproj ]]; then
sed -i "s/<TargetFramework>netcoreapp${DEFAULT_VERSION}<\/TargetFramework>/<TargetFramework>netcoreapp${DOTNET_VERSION}<\/TargetFramework>/g" "$file"
fi

if [ $? -ne 0 ]; then
echo "Error: Failed to update version in $file"
exit 1
fi
echo "Successfully updated $file"
}

# Update all relevant files
update_version "asp_frontend_service/asp_frontend_service.csproj"
update_version "asp_remote_service/asp_remote_service.csproj"


# Verify changes
echo "Verifying changes..."
echo "=== Frontend csproj ==="
grep -n "TargetFramework" asp_frontend_service/asp_frontend_service.csproj
echo "=== Remote csproj ==="
grep -n "TargetFramework" asp_remote_service/asp_remote_service.csproj

else
echo "Using default version ${DEFAULT_VERSION}, no changes needed"
fi

- name: Build Sample App Zip
working-directory: sample-apps/dotnet
run: zip -r dotnet-sample-app.zip .
run: zip -r dotnet-sample-app-${DOTNET_VERSION}.zip .

- name: Upload to S3
working-directory: sample-apps/dotnet
run: aws s3api put-object --bucket aws-appsignals-sample-app-prod-${{ matrix.aws-region }} --body ./dotnet-sample-app.zip --key dotnet-sample-app.zip
run: aws s3api put-object --bucket aws-appsignals-sample-app-prod-${{ matrix.aws-region }} --body ./dotnet-sample-app-${DOTNET_VERSION}.zip --key dotnet-sample-app-${DOTNET_VERSION}.zip

- name: Upload Windows Script to S3
working-directory: sample-apps/dotnet
Expand Down
Loading