Skip to content

Commit aa3d5f3

Browse files
committed
WIP
0 parents  commit aa3d5f3

114 files changed

Lines changed: 23108 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.config/dotnet-tools.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"version": 1,
3+
"isRoot": true,
4+
"tools": {
5+
"cake.tool": {
6+
"version": "5.1.0",
7+
"commands": [
8+
"dotnet-cake"
9+
],
10+
"rollForward": false
11+
}
12+
}
13+
}

.devcontainer/devcontainer.json

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
{
2+
"name": "NServiceBus CLI Dev Container",
3+
"image": "mcr.microsoft.com/dotnet/sdk:9.0.306",
4+
"features": {
5+
"ghcr.io/devcontainers/features/docker-in-docker:2": {}
6+
},
7+
"customizations": {
8+
"vscode": {
9+
"extensions": [
10+
"ms-dotnettools.csharp",
11+
"ms-azuretools.vscode-docker"
12+
]
13+
}
14+
},
15+
"workspaceFolder": "/workspace",
16+
"workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=cached",
17+
"postCreateCommand": "dotnet restore && dotnet tool restore",
18+
"settings": {
19+
"terminal.integrated.defaultProfile.linux": "bash"
20+
}
21+
}

.dockerignore

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
**/.dockerignore
2+
**/.env
3+
**/.git
4+
**/.gitignore
5+
**/.project
6+
**/.settings
7+
**/.toolstarget
8+
**/.vs
9+
**/.vscode
10+
**/*.*proj.user
11+
**/*.dbmdl
12+
**/*.jfm
13+
**/azds.yaml
14+
**/bin
15+
**/charts
16+
**/docker-compose*
17+
**/Dockerfile*
18+
**/node_modules
19+
**/npm-debug.log
20+
**/obj
21+
**/secrets.dev.yaml
22+
**/values.dev.yaml
23+
LICENSE
24+
README.md
25+
artifacts/
26+
tests/
27+
build.cake

.editorconfig

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
root = true
2+
3+
charset = utf-8
4+
5+
[*]
6+
end_of_line = LF
7+
indent_style = space
8+
indent_size = 4
9+
insert_final_newline = false
10+
trim_trailing_whitespace = true
11+
12+
[*.sln]
13+
indent_style = tab
14+
15+
[*.{csproj,vbproj,vcxproj,vcxproj.filters}]
16+
indent_size = 2
17+
18+
[*.{xml,config,props,targets,nuspec,ruleset}]
19+
indent_size = 2
20+
21+
[*.{yml,yaml}]
22+
indent_size = 2
23+
24+
[*.json]
25+
indent_size = 2
26+
27+
[*.md]
28+
trim_trailing_whitespace = false
29+
30+
[*.cs]
31+
# Sort using and Import directives with System.* appearing first
32+
dotnet_sort_system_directives_first = true
33+
dotnet_separate_import_directive_groups = false

.github/dependabot.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5+
version: 2
6+
updates:
7+
- package-ecosystem: "dotnet-sdk" # See documentation for possible values
8+
directory: "/" # Location of package manifests
9+
schedule:
10+
interval: "daily"
11+
- package-ecosystem: "github-actions" # See documentation for possible values
12+
directory: "/" # Location of package manifests
13+
schedule:
14+
interval: "daily"
15+
- package-ecosystem: "nuget" # See documentation for possible values
16+
directory: "/" # Location of package manifests
17+
schedule:
18+
interval: "daily"
19+
- package-ecosystem: "devcontainers" # See documentation for possible values
20+
directory: "/"
21+
schedule:
22+
interval: "daily"

.github/workflows/_docs_deploy_

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: "🦕 Docusaurus Documentation Website"
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
id-token: write
13+
14+
defaults:
15+
run:
16+
working-directory: website
17+
18+
jobs:
19+
build:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- name: Checkout
23+
uses: actions/checkout@v4
24+
25+
- name: Setup Node.js
26+
uses: actions/setup-node@v4
27+
with:
28+
node-version: 22
29+
cache: npm
30+
cache-dependency-path: website/package-lock.json
31+
32+
- name: Install dependencies
33+
run: npm ci
34+
35+
- name: Build website
36+
run: npm run build
37+
38+
- name: Setup Pages
39+
uses: actions/configure-pages@v4
40+
41+
- name: Upload artifact
42+
uses: actions/upload-pages-artifact@v3
43+
with:
44+
path: ./website/build/
45+
46+
deploy:
47+
environment:
48+
name: github-pages
49+
url: ${{ steps.deployment.outputs.page_url }}
50+
runs-on: ubuntu-latest
51+
needs: build
52+
steps:
53+
- name: Deploy to GitHub Pages
54+
id: deployment
55+
uses: actions/deploy-pages@v4
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: "🦕 Docusaurus Documentation Website (PR Preview)"
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
types:
8+
- opened
9+
- reopened
10+
- synchronize
11+
- closed
12+
13+
permissions:
14+
contents: write
15+
pull-requests: write
16+
17+
defaults:
18+
run:
19+
working-directory: website
20+
21+
jobs:
22+
deploy-preview:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@v4
27+
28+
- name: Setup Node.js
29+
uses: actions/setup-node@v4
30+
with:
31+
node-version: 22
32+
cache: npm
33+
cache-dependency-path: website/package-lock.json
34+
35+
- name: Install dependencies
36+
run: npm ci
37+
38+
- name: Build website
39+
run: npm run build
40+
env:
41+
DOCUSAURUS_BASE_URL: /pr-preview/pr-${{ github.event.pull_request.number }}/
42+
43+
- name: Deploy preview
44+
uses: rossjrw/pr-preview-action@v1
45+
with:
46+
source-dir: ./website/build/
47+
48+
# - name: Comment PR
49+
# uses: actions/github-script@v7
50+
# with:
51+
# script: |
52+
# const url = `https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}/pr-preview/pr-${{ github.event.pull_request.number }}/`;
53+
# const comment = `### 📖 Documentation Preview
54+
55+
# The documentation preview for this PR is available at:
56+
# ${url}
57+
58+
# This preview will be updated automatically when the PR is updated.`;
59+
60+
# github.rest.issues.createComment({
61+
# issue_number: context.issue.number,
62+
# owner: context.repo.owner,
63+
# repo: context.repo.repo,
64+
# body: comment
65+
# });
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: Dependabot Cake
2+
on:
3+
workflow_dispatch:
4+
schedule:
5+
# runs every monday at 9 am
6+
- cron: '0 9 * * 1'
7+
8+
jobs:
9+
dependabot-cake:
10+
runs-on: ubuntu-latest # linux, because this is a docker-action
11+
permissions:
12+
contents: write
13+
pull-requests: write
14+
steps:
15+
- name: check/update cake dependencies
16+
uses: nils-org/dependabot-cake-action@v1
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Dependabot .NET SDK Post-Upgrade - Sync Dev Container Image Version
2+
3+
on:
4+
pull_request:
5+
types: [opened, synchronize, reopened]
6+
branches: [main] # or your default branch
7+
paths:
8+
- 'global.json'
9+
10+
jobs:
11+
update-dev-container-image-version:
12+
if: github.event.pull_request.user.login == 'dependabot[bot]'
13+
runs-on: ubuntu-latest
14+
permissions:
15+
contents: write
16+
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v5
20+
with:
21+
ref: ${{ github.head_ref }}
22+
23+
- name: Install jq
24+
run: sudo apt-get install -y jq
25+
26+
- name: Extract SDK version from global.json
27+
id: extract_version
28+
run: |
29+
sdk_version=$(jq -r '.sdk.version' global.json)
30+
echo "Extracted SDK version: $sdk_version"
31+
echo "sdk_version=$sdk_version" >> $GITHUB_OUTPUT
32+
33+
- name: Update devcontainer image
34+
run: |
35+
sdk_version=${{ steps.extract_version.outputs.sdk_version }}
36+
image="mcr.microsoft.com/dotnet/sdk:$sdk_version"
37+
echo "Updating image to: $image"
38+
39+
# Update the image line using jq
40+
jq --arg image "$image" '.image = $image' .devcontainer/devcontainer.json > tmp.json
41+
mv tmp.json .devcontainer/devcontainer.json
42+
43+
- name: Commit and push changes
44+
run: |
45+
git config user.name "github-actions[bot]"
46+
git config user.email "github-actions[bot]@users.noreply.github.com"
47+
git add .devcontainer/devcontainer.json
48+
git commit -m "chore: Update devcontainer image to match SDK ${{ steps.extract_version.outputs.sdk_version }}" || echo "No changes to commit"
49+
git push
50+
env:
51+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/docker_build.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Build Docker Image
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
build:
8+
runs-on: ubuntu-latest
9+
10+
steps:
11+
- name: Checkout
12+
uses: actions/checkout@v5
13+
14+
- name: Set up Docker Buildx
15+
uses: docker/setup-buildx-action@v3
16+
17+
- name: Build Docker image
18+
run: docker build -f .\src\BuslyCLI.Console\Dockerfile -t busly-cli .

0 commit comments

Comments
 (0)