Skip to content
This repository has been archived by the owner on May 23, 2023. It is now read-only.

Commit

Permalink
Merge pull request #57 from petabridge/dev
Browse files Browse the repository at this point in the history
v0.2.2 Release
  • Loading branch information
Aaronontheweb authored Nov 18, 2019
2 parents 3e9d000 + 38f8c5b commit e4959d5
Show file tree
Hide file tree
Showing 17 changed files with 157 additions and 28 deletions.
6 changes: 2 additions & 4 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,2 @@
#### 0.2.1 May 10 2019 ####
* Update to Akka 1.3.13
* Added [full `Akka.Bootstrap.Docker` code sample](https://github.com/petabridge/akkadotnet-bootstrap/tree/dev/src/Akka.Bootstrap.Docker.Sample)
* Rewrote [`Akka.Bootstrap.Docker` documentation](https://github.com/petabridge/akkadotnet-bootstrap/tree/dev/src/Akka.Bootstrap.Docker)
#### 0.2.2 November 18 2019 ####
* Updated all underlying dependencies to Akka.NET latest.
8 changes: 8 additions & 0 deletions build-system/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Azure Pipelines Build Files
These `.yaml` files are used by Windows Azure DevOps Pipelines to help execute the following types of builds:

- Pull request validation on Linux (Mono / .NET Core)
- Pull request validation on Windows (.NET Framework / .NET Core)
- NuGet releases with automatic release notes posted to a Github Release repository.

**NOTE**: you will need to change some of the pipeline variables inside the `windows-release.yaml` for your specific project and you will also want to create variable groups with your signing and NuGet push information.
43 changes: 43 additions & 0 deletions build-system/azure-pipeline.template.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
parameters:
name: ''
vmImage: ''
scriptFileName: ''
scriptArgs: 'all'
timeoutInMinutes: 120

jobs:
- job: ${{ parameters.name }}
timeoutInMinutes: ${{ parameters.timeoutInMinutes }}
pool:
vmImage: ${{ parameters.vmImage }}
steps:
- checkout: self # self represents the repo where the initial Pipelines YAML file was found
clean: false # whether to fetch clean each time
submodules: recursive # set to 'true' for a single level of submodules or 'recursive' to get submodules of submodules
persistCredentials: true
# Linux or macOS
- task: Bash@3
displayName: Linux / OSX Build
inputs:
filePath: ${{ parameters.scriptFileName }}
arguments: ${{ parameters.scriptArgs }}
continueOnError: true
condition: in( variables['Agent.OS'], 'Linux', 'Darwin' )
# Windows
- task: BatchScript@1
displayName: Windows Build
inputs:
filename: ${{ parameters.scriptFileName }}
arguments: ${{ parameters.scriptArgs }}
continueOnError: true
condition: eq( variables['Agent.OS'], 'Windows_NT' )
- task: PublishTestResults@2
inputs:
testRunner: VSTest
testResultsFiles: '**/*.trx' #TestResults folder usually
testRunTitle: ${{ parameters.name }}
mergeTestResults: true
- script: 'echo 1>&2'
failOnStderr: true
displayName: 'If above is partially succeeded, then fail'
condition: eq(variables['Agent.JobStatus'], 'SucceededWithIssues')
22 changes: 22 additions & 0 deletions build-system/linux-pr-validation.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Pull request validation for Linux against the `dev` and `master` branches
# See https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema for reference
trigger:
branches:
include:
- dev
- master

name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)

pr:
autoCancel: true # indicates whether additional pushes to a PR should cancel in-progress runs for the same PR. Defaults to true
branches:
include: [ dev, master ] # branch names which will trigger a build

jobs:
- template: azure-pipeline.template.yaml
parameters:
name: Ubuntu
vmImage: 'ubuntu-16.04'
scriptFileName: ./build.sh
scriptArgs: all
22 changes: 22 additions & 0 deletions build-system/windows-pr-validation.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Pull request validation for Windows against the `dev` and `master` branches
# See https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema for reference
trigger:
branches:
include:
- dev
- master

pr:
autoCancel: true # indicates whether additional pushes to a PR should cancel in-progress runs for the same PR. Defaults to true
branches:
include: [ dev, master ] # branch names which will trigger a build

name: $(Year:yyyy).$(Month).$(DayOfMonth)$(Rev:.r)

jobs:
- template: azure-pipeline.template.yaml
parameters:
name: Windows
vmImage: 'vs2017-win2016'
scriptFileName: build.cmd
scriptArgs: all
38 changes: 38 additions & 0 deletions build-system/windows-release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Release task for PbLib projects
# See https://docs.microsoft.com/en-us/azure/devops/pipelines/yaml-schema for reference

pool:
vmImage: vs2017-win2016
demands: Cmd

trigger:
branches:
include:
- refs/tags/*

variables:
- group: signingSecrets #create this group with SECRET variables `signingUsername` and `signingPassword`
- group: nugetKeys #create this group with SECRET variables `nugetKey`
- name: githubConnectionName
value: Releases
- name: projectName
value: Akka.Bootstrap
- name: githubRepositoryName
value: petabridge/akkadotnet-bootstrap

steps:
- task: BatchScript@1
displayName: 'FAKE Build'
inputs:
filename: build.cmd
arguments: 'All SignClientUser=$(signingUsername) SignClientSecret=$(signingPassword) nugetpublishurl=https://www.nuget.org/api/v2/package nugetkey=$(nugetKey)'

- task: GitHubRelease@0
displayName: 'GitHub release (create)'
inputs:
gitHubConnection: $(githubConnectionName)
repositoryName: $(githubRepositoryName)
title: '$(projectName) v$(Build.SourceBranchName)'
releaseNotesFile: 'RELEASE_NOTES.md'
assets: |
bin\nuget\*.nupkg
4 changes: 2 additions & 2 deletions build.fsx
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,8 @@ Target "RunTests" (fun _ ->
let runSingleProject project =
let arguments =
match (hasTeamCity) with
| true -> (sprintf "test -c Release --no-build --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none -teamcity" (outputTests))
| false -> (sprintf "test -c Release --no-build --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none" (outputTests))
| true -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none -teamcity" (outputTests))
| false -> (sprintf "test -c Release --no-build --logger:trx --logger:\"console;verbosity=normal\" --results-directory %s -- -parallel none" (outputTests))

let result = ExecProcess(fun info ->
info.FileName <- "dotnet"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="Petabridge.Cmd.Cluster" Version="0.6.0" />
<PackageReference Include="Petabridge.Cmd.Remote" Version="0.6.0" />
<PackageReference Include="Petabridge.Cmd.Cluster" Version="0.7.0" />
<PackageReference Include="Petabridge.Cmd.Remote" Version="0.7.0" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/Akka.Bootstrap.Docker.Sample/buildLinuxDockerImages.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ if [ -z $IMAGE_VERSION ]; then
fi

if [ -z $IMAGE_NAME ]; then
IMAGE_NAME="akka.docker.boostrap"
IMAGE_NAME="akka.bootstrap.docker"
echo `date`" - Using default Docker image name [$IMAGE_NAME]"
fi

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Build local Windows nanoserver Docker images using the current project.
# Script is designed to be run inside the root directory of the Akka.Bootstrap.Docker.Sample project.
param (
[string]$imageName = "akka.docker.boostrap",
[string]$imageName = "akka.bootstrap.docker",
[Parameter(Mandatory=$true)][string]$tagVersion
)

Expand Down
6 changes: 3 additions & 3 deletions src/Akka.Bootstrap.Docker.Sample/docker-compose-linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ version: '3'

services:
seed:
image: akka.docker.boostrap:latest-linux
image: akka.bootstrap.docker:latest-linux
hostname: seed
ports:
- '9110:9110'
Expand All @@ -13,7 +13,7 @@ services:
CLUSTER_SEEDS: "akka.tcp://DockerBootstrap@seed:4053"

replica1:
image: akka.docker.boostrap:latest-linux
image: akka.bootstrap.docker:latest-linux
ports:
- '0:9110'
- '0:4053'
Expand All @@ -24,7 +24,7 @@ services:
- "seed"

replica2:
image: akka.docker.boostrap:latest-linux
image: akka.bootstrap.docker:latest-linux
ports:
- '0:9110'
- '0:4053'
Expand Down
6 changes: 3 additions & 3 deletions src/Akka.Bootstrap.Docker.Sample/docker-compose-windows.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ version: '3'

services:
seed:
image: akka.docker.boostrap:latest-windows
image: akka.bootstrap.docker:latest-windows
hostname: seed
ports:
- '9110:9110'
Expand All @@ -13,7 +13,7 @@ services:
CLUSTER_SEEDS: "akka.tcp://DockerBootstrap@seed:4053"

replica1:
image: akka.docker.boostrap:latest-windows
image: akka.bootstrap.docker:latest-windows
ports:
- '0:9110'
- '0:4053'
Expand All @@ -24,7 +24,7 @@ services:
- "seed"

replica2:
image: akka.docker.boostrap:latest-windows
image: akka.bootstrap.docker:latest-windows
ports:
- '0:9110'
- '0:4053'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="5.4.1" />
<PackageReference Include="FluentAssertions" Version="5.9.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSdkVersion)" />
<PackageReference Include="xunit" Version="$(XunitVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(XunitVersion)" />
Expand Down
4 changes: 2 additions & 2 deletions src/Akka.Bootstrap.Docker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ This library works with any runtime supported by Akka.NET.

* `CLUSTER_IP` - this value will replace the `akka.remote.dot-netty.tcp.public-hostname` at runtime. If this value is not provided, we will use `Dns.GetHostname()` instead.
* `CLUSTER_PORT` - the port number that will be used by Akka.Remote for inbound connections.
* `CLUSTER_SEEDS` - a comma-delimited list of seed node addressed used by Akka.Cluster.
* `CLUSTER_SEEDS` - a comma-delimited list of seed node addresses used by Akka.Cluster. Here's [an example](https://github.com/petabridge/Cluster.WebCrawler/blob/9f854ff2bfb34464769f562936183ea7719da4ea/yaml/k8s-tracker-service.yaml#L46-L47).

### Using `Akka.Bootstrap.Docker`
The `Akka.Bootstrap.Docker` NuGet package itself is pretty simple - all it does is expose the `DockerBootstrap` class which gives you the ability to automatically load all of the environment variables we pass in via Docker into your Akka.Remote and Akka.Cluster configuration:
Expand Down Expand Up @@ -59,4 +59,4 @@ Here are some relevant examples:

* `docker-compose` - [Akka.Bootstrap.Docker.Sample/docker-compose-windows.yaml](../Akka.Bootstrap.Docker.Sample/docker-compose-windows.yaml)
* `docker-compose` - [Akka.Bootstrap.Docker.Sample/docker-compose-linux.yaml](../Akka.Bootstrap.Docker.Sample/docker-compose-linux.yaml)
* `kubernetes` - [Cluster.WebCrawler K8s Service Definitions](https://github.com/petabridge/Cluster.WebCrawler/tree/dev/yaml)
* `kubernetes` - [Cluster.WebCrawler K8s Service Definitions](https://github.com/petabridge/Cluster.WebCrawler/tree/dev/yaml)
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="5.4.1" />
<PackageReference Include="FluentAssertions" Version="5.9.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSdkVersion)" />
<PackageReference Include="xunit" Version="$(XunitVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(XunitVersion)" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluentAssertions" Version="5.4.1" />
<PackageReference Include="FluentAssertions" Version="5.9.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(TestSdkVersion)" />
<PackageReference Include="xunit" Version="$(XunitVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(XunitVersion)" />
Expand Down
12 changes: 5 additions & 7 deletions src/common.props
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@
<PropertyGroup>
<Copyright>Copyright © 2015-2019 Petabridge®</Copyright>
<Authors>Petabridge</Authors>
<VersionPrefix>0.2.1</VersionPrefix>
<PackageReleaseNotes>Update to Akka 1.3.13
Added [full `Akka.Bootstrap.Docker` code sample](https://github.com/petabridge/akkadotnet-bootstrap/tree/dev/src/Akka.Bootstrap.Docker.Sample)
Rewrote [`Akka.Bootstrap.Docker` documentation](https://github.com/petabridge/akkadotnet-bootstrap/tree/dev/src/Akka.Bootstrap.Docker)</PackageReleaseNotes>
<VersionPrefix>0.2.2</VersionPrefix>
<PackageReleaseNotes>Updated all underlying dependencies to Akka.NET latest.</PackageReleaseNotes>
<PackageIconUrl>https://petabridge.com/images/logo.png</PackageIconUrl>
<PackageProjectUrl>https://github.com/petabridge/akkadotnet-bootstrap</PackageProjectUrl>
<PackageLicenseUrl>https://github.com/petabridge/akkadotnet-bootstrap/blob/master/LICENSE</PackageLicenseUrl>
Expand All @@ -22,11 +20,11 @@ Rewrote [`Akka.Bootstrap.Docker` documentation](https://github.com/petabridge/ak
</PropertyGroup>
<PropertyGroup>
<XunitVersion>2.4.1</XunitVersion>
<TestSdkVersion>15.9.0</TestSdkVersion>
<TestSdkVersion>16.3.0</TestSdkVersion>
<NetCoreTestVersion>netcoreapp2.1</NetCoreTestVersion>
<NetStandardVersion>netstandard2.0</NetStandardVersion>
<NetFrameworkTestVersion>net461</NetFrameworkTestVersion>
<AkkaVersion>1.3.13</AkkaVersion>
<SourceLinkVersion>1.0.0-beta2-18618-05</SourceLinkVersion>
<AkkaVersion>1.3.16</AkkaVersion>
<SourceLinkVersion>1.0.0-beta2-19554-01</SourceLinkVersion>
</PropertyGroup>
</Project>

0 comments on commit e4959d5

Please sign in to comment.