Skip to content
Merged
Show file tree
Hide file tree
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
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 @@ -151,7 +151,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/net8.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