Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 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
5 changes: 4 additions & 1 deletion .github/actions/full-release/action.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: Build, Test, and Publish
description: 'Execute the full release process for a workspace.'
inputs:
assembly_key_path_pair:
description: 'The assembly key path pair file string.'
required: true
workspace_path:
description: 'Path to the workspace being released.'
required: true
Expand Down Expand Up @@ -64,7 +67,7 @@ runs:
/production/common/releasing/digicert/client_cert_password = DIGICERT_CLIENT_CERT_PASSWORD,
/production/common/releasing/digicert/code_signing_cert_sha1_hash = DIGICERT_CODE_SIGNING_CERT_SHA1_HASH,
/production/common/releasing/nuget/api_key = NUGET_API_KEY'
s3_path_pairs: 'launchdarkly-releaser/dotnet/LaunchDarkly.snk = LaunchDarkly.snk'
s3_path_pairs: ${{ inputs.assembly_key_path_pair }}

- name: Release build
uses: ./.github/actions/build-release
Expand Down
24 changes: 24 additions & 0 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,10 @@ jobs:
package-sdk-server-tag_name: ${{ steps.release.outputs['pkgs/sdk/server--tag_name'] }}
package-sdk-server-telemetry-released: ${{ steps.release.outputs['pkgs/telemetry--release_created'] }}
package-sdk-server-telemetry-tag_name: ${{ steps.release.outputs['pkgs/telemetry--tag_name'] }}
package-shared-common-released: ${{ steps.release.outputs['pkgs/shared/common--release_created'] }}
package-shared-common-tag_name: ${{ steps.release.outputs['pkgs/shared/common--tag_name'] }}
package-shared-common-json-net-released: ${{ steps.release.outputs['pkgs/shared/common-json-net--release_created'] }}
package-shared-common-json-net-tag_name: ${{ steps.release.outputs['pkgs/shared/common-json-net--tag_name'] }}
tag_name: ${{ steps.release.outputs.tag_name }}

steps:
Expand Down Expand Up @@ -115,3 +119,23 @@ jobs:
dry_run: false
generate_provenance: true
tag_name: ${{ needs.release-please.outputs.package-sdk-server-dynamodb-tag_name }}

release-shared-common:
needs: release-please
if: ${{ needs.release-please.outputs.package-shared-common-released == 'true'}}
uses: ./.github/workflows/release.yml
with:
package_path: pkgs/shared/common
dry_run: false
generate_provenance: true
tag_name: ${{ needs.release-please.outputs.package-shared-common-tag_name }}

release-shared-common-json-net:
needs: release-please
if: ${{ needs.release-please.outputs.package-shared-common-json-net-released == 'true'}}
uses: ./.github/workflows/release.yml
with:
package_path: pkgs/shared/common-json-net
dry_run: false
generate_provenance: true
tag_name: ${{ needs.release-please.outputs.package-shared-common-json-net-tag_name }}
2 changes: 1 addition & 1 deletion .github/workflows/release-sdk-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ jobs:
with:
aws_assume_role: ${{ vars.AWS_ROLE_ARN }}
ssm_parameter_pairs: '/production/common/releasing/nuget/api_key = NUGET_API_KEY'
s3_path_pairs: 'launchdarkly-releaser/dotnet/LaunchDarkly.ClientSdk.snk = LaunchDarkly.ClientSdk.snk'
s3_path_pairs: ${{ env.ASSEMBLY_KEY_PATH_PAIR }}

- name: Publish Nupkg
id: publish
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ on:
- pkgs/sdk/server
- pkgs/sdk/server-ai
- pkgs/telemetry
- pkgs/shared/common
- pkgs/shared/common-json-net
dry_run:
description: 'Is this a dry run. If so no package will be published.'
type: boolean
Expand Down Expand Up @@ -61,6 +63,7 @@ jobs:
- uses: ./.github/actions/full-release
id: full-release
with:
assembly_key_path_pair: ${{ env.ASSEMBLY_KEY_PATH_PAIR }}
workspace_path: ${{ env.WORKSPACE_PATH }}
project_file: ${{ env.PROJECT_FILE }}
build_output_path: ${{ env.BUILD_OUTPUT_PATH }}
Expand Down
48 changes: 48 additions & 0 deletions .github/workflows/server-shared-common-json-net.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: LaunchDarkly.CommonSdk.JsonNet CI

on:
push:
branches: [ main, 'feat/**' ]
paths:
- '.github/**'
- 'global.example.json'
- 'pkgs/shared/common-json-net/**'
- '!**.md'
pull_request:
branches: [ main, 'feat/**' ]
paths:
- '.github/**'
- 'global.example.json'
- 'pkgs/shared/common-json-net/**'
- '!**.md'

jobs:
build-and-test:
strategy:
matrix:
include:
- os: ubuntu-latest
framework: netstandard2.0
test_framework: net8.0
- os: windows-latest
framework: net462
test_framework: net462

runs-on: ${{ matrix.os }}

defaults:
run:
shell: ${{ matrix.os == 'windows-latest' && 'powershell' || 'bash' }}

steps:
- uses: actions/checkout@v4

- name: Setup Env from project's Env file
shell: bash
run: echo "$(cat pkgs/shared/common-json-net/github_actions.env)" >> $GITHUB_ENV

- uses: ./.github/actions/ci
with:
project_file: ${{ env.PROJECT_FILE }}
test_project_file: ${{ env.TEST_PROJECT_FILE }}
target_test_framework: ${{ matrix.test_framework }}
48 changes: 48 additions & 0 deletions .github/workflows/server-shared-common.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: LaunchDarkly.CommonSdk CI

on:
push:
branches: [ main, 'feat/**' ]
paths:
- '.github/**'
- 'global.example.json'
- 'pkgs/shared/common/**'
- '!**.md'
pull_request:
branches: [ main, 'feat/**' ]
paths:
- '.github/**'
- 'global.example.json'
- 'pkgs/shared/common/**'
- '!**.md'

jobs:
build-and-test:
strategy:
matrix:
include:
- os: ubuntu-latest
framework: netstandard2.0
test_framework: net8.0
- os: windows-latest
framework: net462
test_framework: net462

runs-on: ${{ matrix.os }}

defaults:
run:
shell: ${{ matrix.os == 'windows-latest' && 'powershell' || 'bash' }}

steps:
- uses: actions/checkout@v4

- name: Setup Env from project's Env file
shell: bash
run: echo "$(cat pkgs/shared/common/github_actions.env)" >> $GITHUB_ENV

- uses: ./.github/actions/ci
with:
project_file: ${{ env.PROJECT_FILE }}
test_project_file: ${{ env.TEST_PROJECT_FILE }}
target_test_framework: ${{ matrix.test_framework }}
4 changes: 3 additions & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,7 @@
"pkgs/sdk/server": "8.8.0",
"pkgs/sdk/client": "5.4.0",
"pkgs/telemetry": "1.1.0",
"pkgs/sdk/server-ai": "0.7.0"
"pkgs/sdk/server-ai": "0.7.0",
"pkgs/shared/common": "7.0.0",
"pkgs/shared/common-json-net": "7.0.0"
}
3 changes: 2 additions & 1 deletion pkgs/dotnet-server-sdk-consul/github_actions.env
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ WORKSPACE_PATH=pkgs/dotnet-server-sdk-consul
PROJECT_FILE=pkgs/dotnet-server-sdk-consul/src/LaunchDarkly.ServerSdk.Consul.csproj
BUILD_OUTPUT_PATH=pkgs/dotnet-server-sdk-consul/src/bin/Release/
BUILD_OUTPUT_DLL_NAME=LaunchDarkly.ServerSdk.Consul.dll
TEST_PROJECT_FILE=pkgs/dotnet-server-sdk-consul/test/LaunchDarkly.ServerSdk.Consul.Tests.csproj
TEST_PROJECT_FILE=pkgs/dotnet-server-sdk-consul/test/LaunchDarkly.ServerSdk.Consul.Tests.csproj
ASSEMBLY_KEY_PATH_PAIR='launchdarkly-releaser/dotnet/LaunchDarkly.Consul.snk = LaunchDarkly.Consul.snk'
3 changes: 2 additions & 1 deletion pkgs/dotnet-server-sdk-dynamodb/github_actions.env
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ WORKSPACE_PATH=pkgs/dotnet-server-sdk-dynamodb
PROJECT_FILE=pkgs/dotnet-server-sdk-dynamodb/src/LaunchDarkly.ServerSdk.DynamoDB.csproj
BUILD_OUTPUT_PATH=pkgs/dotnet-server-sdk-dynamodb/src/bin/Release/
BUILD_OUTPUT_DLL_NAME=LaunchDarkly.ServerSdk.DynamoDB.dll
TEST_PROJECT_FILE=pkgs/dotnet-server-sdk-dynamodb/test/LaunchDarkly.ServerSdk.DynamoDB.Tests.csproj
TEST_PROJECT_FILE=pkgs/dotnet-server-sdk-dynamodb/test/LaunchDarkly.ServerSdk.DynamoDB.Tests.csproj
ASSEMBLY_KEY_PATH_PAIR='launchdarkly-releaser/dotnet/LaunchDarkly.DynamoDB.snk = LaunchDarkly.DynamoDB.snk'
3 changes: 2 additions & 1 deletion pkgs/dotnet-server-sdk-redis/github_actions.env
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ WORKSPACE_PATH=pkgs/dotnet-server-sdk-redis
PROJECT_FILE=pkgs/dotnet-server-sdk-redis/src/LaunchDarkly.ServerSdk.Redis.csproj
BUILD_OUTPUT_PATH=pkgs/dotnet-server-sdk-redis/src/bin/Release/
BUILD_OUTPUT_DLL_NAME=LaunchDarkly.ServerSdk.Redis.dll
TEST_PROJECT_FILE=pkgs/dotnet-server-sdk-redis/test/LaunchDarkly.ServerSdk.Redis.Tests.csproj
TEST_PROJECT_FILE=pkgs/dotnet-server-sdk-redis/test/LaunchDarkly.ServerSdk.Redis.Tests.csproj
ASSEMBLY_KEY_PATH_PAIR='launchdarkly-releaser/dotnet/LaunchDarkly.Redis.snk = LaunchDarkly.Redis.snk'
1 change: 1 addition & 0 deletions pkgs/sdk/client/github_actions.env
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ BUILD_OUTPUT_DLL_NAME=LaunchDarkly.ClientSdk.dll
TEST_PROJECT_FILE=pkgs/sdk/client/test/LaunchDarkly.ClientSdk.Tests/LaunchDarkly.ClientSdk.Tests.csproj
CONTRACT_TEST_PROJECT_FILE=pkgs/sdk/client/contract-tests/TestService.csproj
CONTRACT_TEST_DLL_FILE=pkgs/sdk/client/contract-tests/bin/debug/net7.0/ContractTestService.dll
ASSEMBLY_KEY_PATH_PAIR='launchdarkly-releaser/dotnet/LaunchDarkly.ClientSdk.snk = LaunchDarkly.ClientSdk.snk'
1 change: 1 addition & 0 deletions pkgs/sdk/server-ai/github_actions.env
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ PROJECT_FILE=pkgs/sdk/server-ai/src/LaunchDarkly.ServerSdk.Ai.csproj
BUILD_OUTPUT_PATH=pkgs/sdk/server-ai/src/bin/Release/
BUILD_OUTPUT_DLL_NAME=LaunchDarkly.ServerSdk.Ai.dll
TEST_PROJECT_FILE=pkgs/sdk/server-ai/test/LaunchDarkly.ServerSdk.Ai.Tests.csproj
ASSEMBLY_KEY_PATH_PAIR='launchdarkly-releaser/dotnet/LaunchDarkly.snk = LaunchDarkly.snk'
1 change: 1 addition & 0 deletions pkgs/sdk/server/github_actions.env
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ BUILD_OUTPUT_DLL_NAME=LaunchDarkly.ServerSdk.dll
TEST_PROJECT_FILE=pkgs/sdk/server/test/LaunchDarkly.ServerSdk.Tests.csproj
CONTRACT_TEST_PROJECT_FILE=pkgs/sdk/server/contract-tests/TestService.csproj
CONTRACT_TEST_DLL_FILE=pkgs/sdk/server/contract-tests/bin/debug/net8.0/ContractTestService.dll
ASSEMBLY_KEY_PATH_PAIR='launchdarkly-releaser/dotnet/LaunchDarkly.snk = LaunchDarkly.snk'
Loading
Loading