Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce packaging, distribution and documentation for the C# driver #623

Merged
merged 118 commits into from
Apr 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
118 commits
Select commit Hold shift + click to select a range
01defb8
Fix dependency ref and comment out excessive .factory builds
farost Mar 18, 2024
73bb791
Add csharp tests to automation. Update maven artifacts
farost Mar 19, 2024
07194f0
Refactor error messages codes. Update deps
farost Mar 21, 2024
70d3c11
Start the quickstart test, several experiments. Wip
farost Mar 15, 2024
472f171
Progress on the quickstart test
farost Mar 18, 2024
e9c9462
Complete two versions of the quickstart test, gonna refactor later
farost Mar 18, 2024
c7ab812
Refactor and clean integration tests
farost Mar 18, 2024
3919aad
Rename test fixture
farost Mar 18, 2024
958fd6e
Add more usages of concepts to the quickstart test
farost Mar 18, 2024
f27ffbd
Rename Quickstart -> Examples
farost Mar 18, 2024
8ffe135
Start adding documentation
farost Mar 18, 2024
e8cc668
Fix checkstyle
farost Mar 19, 2024
1fbf274
Add doxygen html generation, wip
farost Mar 19, 2024
2f68070
Fix references in the common build
farost Mar 19, 2024
162b93a
Refactor Properties <-> Methods. Fix some documentation
farost Mar 20, 2024
f1b57a5
Start the quickstart test, several experiments. Wip
farost Mar 15, 2024
d5ec18a
Resolve conflictsRefactor and clean integration tests
farost Mar 18, 2024
0ae72e3
Fix rebase conflicts.
farost Mar 20, 2024
4b40d1b
Fix conflicts for Quickstart and Examples tests.
farost Mar 15, 2024
24f5a98
Fix conflicts. Rebase + resolve conflicts
farost Mar 20, 2024
2c28045
Fix references to doxygen
farost Mar 20, 2024
c3522e4
Prepare rule calls for the docs
farost Mar 20, 2024
ca9bbd7
Add template for csharp parser
farost Mar 20, 2024
cbc0e1f
Fix cpp parser
farost Mar 20, 2024
d6345bf
Fix parser to just get anything
farost Mar 20, 2024
0debecb
Add structs to generation
farost Mar 21, 2024
fe06410
Add test logs
farost Mar 21, 2024
2f9c7af
Progress with c# docs
farost Mar 21, 2024
893240b
Temporarily comment out factory builds
farost Mar 21, 2024
7083f63
Add enums without examples to the parser, fix some generations and names
farost Mar 22, 2024
27de3ff
Add enums and fix naming choosing in the parser
farost Mar 22, 2024
3e51a97
Add code examples for method for the cpp driver
farost Mar 22, 2024
710b49a
Refactor enums parsing, add basic docs
farost Mar 22, 2024
5159b64
Fix lang ref. Add examples for methods
farost Mar 22, 2024
3edf7c7
Finish generated docs for C#, fix automation.yml, README and integrat…
farost Mar 22, 2024
482dd44
Update deps temporarily
farost Mar 22, 2024
c0ac949
Fix integration tests
farost Mar 25, 2024
8551d4b
Fix merge conflicts in error messages
farost Mar 25, 2024
593c371
Fix typos
farost Mar 25, 2024
fc53872
Fix copyright header
farost Mar 25, 2024
c583730
Add static members generation for docs
farost Mar 25, 2024
79ca5f8
Update deps ref for static members generation
farost Mar 25, 2024
62500cb
Fix c parser bug with old files
farost Mar 25, 2024
5647f1f
Add paket.lock file to git: https://fsprojects.github.io/Paket/faq.ht…
farost Mar 25, 2024
5b3f418
Fix checkstyle by ignoring paket.lock
farost Mar 25, 2024
93dd34e
Change output dlls names to align with namespaces
farost Mar 26, 2024
c647b09
Fix argument type parsing error for CS, CPP and C. Not pushing CS for…
farost Mar 26, 2024
45002bf
Fix multi-templated arguments
farost Mar 26, 2024
b50de9b
Fix scary See also
farost Mar 26, 2024
b13fa96
Format See also
farost Mar 26, 2024
5fa052a
Fix indentation for See also targets
farost Mar 26, 2024
9087951
Fix tables width, add zero-width whitespaces for C, CPP, C#
farost Mar 26, 2024
2b2c005
Remove excessive files
farost Mar 26, 2024
aa2f453
Add nuget pack calls without the impl (temporarily)
farost Mar 27, 2024
f6d1e14
Add first automatic packaging try
farost Mar 27, 2024
3efdfa7
Start circleci, fix BUILD for non-mac
farost Mar 27, 2024
a17a6aa
Make packs special for each os
farost Mar 27, 2024
a464ba0
Add deployment test
farost Mar 28, 2024
37e8a83
Add nuget push call
farost Mar 28, 2024
903ace4
Sync with updated bazel distr repo
farost Mar 31, 2024
e11b712
Add two options to build packages: separate and merged ones
farost Apr 1, 2024
f34ff88
Refactor rules, added steps to the circleci scripts
farost Apr 1, 2024
f6a95f1
Fix builds and docs after merges
farost Apr 2, 2024
5e350fd
Fix some docs
farost Apr 2, 2024
632b3a7
Fix checkstyle. Change packages content
farost Apr 2, 2024
39739ee
Fix build, prepare csproj for test
farost Apr 2, 2024
0c3d270
Refactor rules to produce platform-specific native packages and push …
farost Apr 2, 2024
1aecd9e
Fix build with platforms
farost Apr 2, 2024
7b5634c
Remove excessive flag
farost Apr 2, 2024
1153f6c
Remove direct version specification in the rules
farost Apr 2, 2024
46c1e90
Enable snapshot tests for my branch
farost Apr 2, 2024
a0ed6ab
Comment out excessive steps. Prepare test project for c#
farost Apr 3, 2024
a1b6aae
Fix circleci
farost Apr 3, 2024
bcbcc3b
Fix circleci by removing sudo
farost Apr 3, 2024
1377681
Return globalization envvar export
farost Apr 3, 2024
9a5ed62
Pass action env to bazel run
farost Apr 3, 2024
e876f47
Temporarily disable win and mac builds
farost Apr 3, 2024
2d07d5a
Disable windows builds
farost Apr 3, 2024
7fb7d28
Try to fix linux build by host_action_env
farost Apr 3, 2024
173f75e
Connect host_action_env with action_env
farost Apr 3, 2024
8dad32e
Update readme. Disable linux temp
farost Apr 3, 2024
fb7816b
Add envvar for the mac installation, fix linux installation
farost Apr 3, 2024
0bdb4e3
Fix circleci
farost Apr 3, 2024
c72cc88
Fix linux build, uncomment steps
farost Apr 3, 2024
1317613
Change project descriptions
farost Apr 3, 2024
47a6e34
Fix linux deps
farost Apr 3, 2024
a682e22
Add readme to the packages. Comment out windows temporarily
farost Apr 3, 2024
bf6c2cb
Fix windows build, return windows steps
farost Apr 3, 2024
cc217c0
Turn windows off again...
farost Apr 3, 2024
8b33201
Change /bazel -> /b
farost Apr 3, 2024
95d9c03
Enable windows to run python scripts. Update mac deps for dotnet
farost Apr 3, 2024
1f8e677
Try fixing macos and windows circleci
farost Apr 3, 2024
221935c
Add a series of test changes for circleci
farost Apr 3, 2024
4b94322
Fix circleci
farost Apr 3, 2024
af1d63d
Add another try for mac and linux
farost Apr 3, 2024
42c2f01
Fix config.yml
farost Apr 3, 2024
f4d6466
Add install script for mac dotnet for tests
farost Apr 4, 2024
fc29f90
Remove comments from config.yml for build fix
farost Apr 4, 2024
fba3e50
Remove linux from builds, experiment with mac
farost Apr 4, 2024
5be8318
Turn off everything except of dotnet mac
farost Apr 4, 2024
ab1a2ca
Test dotnet install for mac
farost Apr 4, 2024
a552b3a
Turn test snapshot any off
farost Apr 4, 2024
fe39c41
Fix build
farost Apr 4, 2024
fd2eed5
Add find dotnet for mac builds
farost Apr 4, 2024
80c72f6
Add ln for mac installation
farost Apr 4, 2024
5f4581e
Add additional logs, fix versioning for tests
farost Apr 4, 2024
d207070
Remove requires for windows
farost Apr 4, 2024
6e6f13a
Return windows snapshot deploy
farost Apr 4, 2024
a54dfc4
Comment out excessive rules
farost Apr 4, 2024
343f8f7
Update ref with more runtimes
farost Apr 4, 2024
5b386b4
Return all the new build steps, update refs with fixes
farost Apr 4, 2024
92784e3
Fix config style
farost Apr 4, 2024
d6cdd18
Fix windows runtime deployment scripts
farost Apr 4, 2024
c433ef6
Remove excessive spaces
farost Apr 4, 2024
3bc11e0
Add sleeps for the mac tests
farost Apr 4, 2024
6e64940
Fix release config + fix issue #613
farost Apr 4, 2024
b40940d
Fix docs for the updated method in python
farost Apr 4, 2024
035c7c3
Return builds, fix comments and refs
farost Apr 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
117 changes: 116 additions & 1 deletion .circleci/config.yml
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't fully work on CircleCI, but it has some successful passes for some platforms (the whole workflow), so you can have a look. I'll put another comment once it's in the final state.

Original file line number Diff line number Diff line change
Expand Up @@ -349,6 +349,81 @@ commands:
export DEPLOY_ARTIFACT_PASSWORD=$REPO_TYPEDB_PASSWORD
bazel run --jobs=8 --define version=$(cat VERSION) //cpp:deploy-cpp-driver --compilation_mode=opt -- release

#########################
# C# deployment steps #
#########################

install-dotnet-mac:
steps:
- run: |
curl -OL "https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh"
chmod a+x dotnet-install.sh
./dotnet-install.sh --version 6.0.125
ln -s /Users/distiller/.dotnet/dotnet /usr/local/bin/

install-dotnet-mac-rosetta:
steps:
- install-brew-rosetta
- run: |
curl -OL "https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh"
chmod a+x dotnet-install.sh
./dotnet-install.sh --version 6.0.125
ln -s /Users/distiller/.dotnet/dotnet /usr/local/bin/

install-dotnet-linux:
steps:
- run: |
rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
yum install -y dotnet-sdk-6.0

install-libicu-linux:
steps:
- run: yum install -y libicu60

deploy-dotnet-runtime-snapshot-unix:
steps:
- run: |
export DEPLOY_NUGET_API_KEY=$REPO_TYPEDB_PASSWORD
bazel run --jobs=8 --define version=0.0.0-$(git rev-parse HEAD) //csharp:driver-csharp-runtime-push -- snapshot

deploy-dotnet-snapshot-unix:
steps:
- run: |
export DEPLOY_NUGET_API_KEY=$REPO_TYPEDB_PASSWORD
bazel run --jobs=8 --define version=0.0.0-$(git rev-parse HEAD) //csharp:driver-csharp-push -- snapshot

test-dotnet-snapshot-unix:
steps:
- run: |
tool/test/start-core-server.sh
sleep 3
sed -i -e "s/DRIVER_CSHARP_VERSION_MARKER/0.0.0-$CIRCLE_SHA1/g" csharp/Test/Deployment/NugetApplicationTest.csproj
cat csharp/Test/Deployment/NugetApplicationTest.csproj
(cd csharp/Test/Deployment && dotnet run NugetApplicationTest.csproj)
tool/test/stop-core-server.sh

test-dotnet-snapshot-mac-rosetta:
steps:
- run: |
tool/test/start-core-server.sh
sleep 3
sed -i -e "s/DRIVER_CSHARP_VERSION_MARKER/0.0.0-$CIRCLE_SHA1/g" csharp/Test/Deployment/NugetApplicationTest.csproj
cat csharp/Test/Deployment/NugetApplicationTest.csproj
(cd csharp/Test/Deployment && /usr/local/bin/dotnet run NugetApplicationTest.csproj)
tool/test/stop-core-server.sh

deploy-dotnet-runtime-release-unix:
steps:
- run: |
export DEPLOY_NUGET_API_KEY=$REPO_NUGET_TOKEN
bazel run --jobs=8 --define version=$(cat VERSION) //csharp:driver-csharp-runtime-push --compilation_mode=opt -- release

deploy-dotnet-release-unix:
steps:
- run: |
export DEPLOY_NUGET_API_KEY=$REPO_NUGET_TOKEN
bazel run --jobs=8 --define version=$(cat VERSION) //csharp:driver-csharp-push --compilation_mode=opt -- release

#########################
# Rust deployment steps #
#########################
Expand Down Expand Up @@ -430,6 +505,9 @@ jobs:
- test-cpp-assembly-linux:
target-arch: arm64

- install-libicu-linux
- deploy-dotnet-runtime-snapshot-unix

deploy-snapshot-linux-x86_64:
executor: linux-x86_64-amazonlinux-2
steps:
Expand All @@ -449,6 +527,9 @@ jobs:
- test-cpp-assembly-linux:
target-arch: x86_64

- install-libicu-linux
- deploy-dotnet-runtime-snapshot-unix

deploy-snapshot-mac-arm64:
executor: mac-arm64
steps:
Expand All @@ -470,6 +551,8 @@ jobs:
- test-cpp-assembly-mac:
target-arch: arm64

- deploy-dotnet-runtime-snapshot-unix

deploy-snapshot-mac-x86_64:
executor: mac-arm64
steps:
Expand All @@ -492,6 +575,8 @@ jobs:
- test-cpp-assembly-mac:
target-arch: x86_64

- deploy-dotnet-runtime-snapshot-unix

deploy-snapshot-windows-x86_64:
executor:
name: win/default
Expand All @@ -512,6 +597,8 @@ jobs:
- run: .circleci\windows\cpp\deploy_snapshot.bat
- run: .circleci\windows\cpp\test_assembly.bat

- run: .circleci\windows\csharp\deploy_snapshot.bat

deploy-snapshot-any:
executor: linux-x86_64-ubuntu-2204
steps:
Expand All @@ -522,6 +609,7 @@ jobs:
- deploy-maven-snapshot-unix
- install-npm-apt
- deploy-npm-snapshot-unix
- deploy-dotnet-snapshot-unix

test-snapshot-linux-arm64:
executor: linux-arm64-amazonlinux-2
Expand All @@ -532,6 +620,9 @@ jobs:
- test-pip-snapshot-unix
- install-maven-linux
- test-maven-snapshot-unix
- install-dotnet-linux
- install-libicu-linux
- test-dotnet-snapshot-unix

test-snapshot-linux-x86_64:
executor: linux-x86_64-amazonlinux-2
Expand All @@ -542,6 +633,8 @@ jobs:
- test-pip-snapshot-unix
- install-maven-linux
- test-maven-snapshot-unix
- install-dotnet-linux
- test-dotnet-snapshot-unix

test-snapshot-mac-arm64:
executor: mac-arm64
Expand All @@ -552,6 +645,8 @@ jobs:
- test-pip-snapshot-unix
- install-maven-mac
- test-maven-snapshot-unix
- install-dotnet-mac
- test-dotnet-snapshot-unix

test-snapshot-mac-x86_64:
executor: mac-arm64
Expand All @@ -563,6 +658,8 @@ jobs:
- test-pip-snapshot-mac-rosetta
- install-maven-mac-rosetta
- test-maven-snapshot-mac-rosetta
- install-dotnet-mac-rosetta
- test-dotnet-snapshot-mac-rosetta

test-snapshot-windows-x86_64:
executor:
Expand All @@ -575,6 +672,7 @@ jobs:
- run: .circleci\windows\prepare.bat
- run: .circleci\windows\python\test_deploy_snapshot.bat
- run: .circleci\windows\java\test_deploy_snapshot.bat
- run: .circleci\windows\csharp\test_deploy_snapshot.bat

test-snapshot-any:
executor: linux-x86_64-ubuntu-2204
Expand All @@ -600,6 +698,9 @@ jobs:
- deploy-clib-release-unix
- deploy-cpp-release-unix

- install-libicu-linux
- deploy-dotnet-runtime-release-unix

deploy-release-linux-x86_64:
executor: linux-x86_64-amazonlinux-2
steps:
Expand All @@ -611,6 +712,9 @@ jobs:
- deploy-clib-release-unix
- deploy-cpp-release-unix

- install-libicu-linux
- deploy-dotnet-runtime-release-unix

deploy-release-mac-arm64:
executor: mac-arm64
steps:
Expand All @@ -621,6 +725,7 @@ jobs:
- deploy-maven-jni-release-unix
- deploy-clib-release-unix
- deploy-cpp-release-unix
- deploy-dotnet-runtime-release-unix

deploy-release-mac-x86_64:
executor: mac-arm64
Expand All @@ -633,6 +738,7 @@ jobs:
- deploy-maven-jni-release-unix
- deploy-clib-release-unix
- deploy-cpp-release-unix
- deploy-dotnet-runtime-release-unix

deploy-release-windows-x86_64:
executor:
Expand All @@ -647,6 +753,7 @@ jobs:
- run: .circleci\windows\java\deploy_release.bat
- run: .circleci\windows\clib\deploy_release.bat
- run: .circleci\windows\cpp\deploy_release.bat
- run: .circleci\windows\csharp\deploy_release.bat

deploy-release-any:
executor: linux-x86_64-ubuntu-2204
Expand All @@ -658,6 +765,7 @@ jobs:
- deploy-maven-release-unix
- install-npm-apt
- deploy-npm-release-unix
- deploy-dotnet-release-unix

deploy-github:
executor: linux-x86_64-ubuntu-2204
Expand Down Expand Up @@ -697,26 +805,29 @@ jobs:
apt install -y git
git push --delete https://[email protected]/vaticle/typedb-driver.git $CIRCLE_BRANCH


workflows:
typedb-driver-snapshot:
jobs:
- deploy-snapshot-linux-arm64:
filters:
branches:
only: [development, master]

- deploy-snapshot-linux-x86_64:
filters:
branches:
only: [development, master]

- deploy-snapshot-mac-arm64:
filters:
branches:
only: [development, master]

- deploy-snapshot-mac-x86_64:
filters:
branches:
only: [development, master]

- deploy-snapshot-windows-x86_64:
filters:
branches:
Expand All @@ -740,27 +851,31 @@ workflows:
requires:
- deploy-snapshot-linux-arm64
- deploy-snapshot-any

- test-snapshot-linux-x86_64:
filters:
branches:
only: [master]
requires:
- deploy-snapshot-linux-x86_64
- deploy-snapshot-any

- test-snapshot-mac-arm64:
filters:
branches:
only: [master]
requires:
- deploy-snapshot-mac-arm64
- deploy-snapshot-any

- test-snapshot-mac-x86_64:
filters:
branches:
only: [master]
requires:
- deploy-snapshot-mac-x86_64
- deploy-snapshot-any

- test-snapshot-windows-x86_64:
filters:
branches:
Expand Down
2 changes: 1 addition & 1 deletion .circleci/windows/clib/deploy_release.bat
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ SET DEPLOY_ARTIFACT_USERNAME=%REPO_TYPEDB_USERNAME%
SET DEPLOY_ARTIFACT_PASSWORD=%REPO_TYPEDB_PASSWORD%

SET /p VER=<VERSION
bazel --output_user_root=C:\bazel run --verbose_failures --define version=%VER% //c:deploy-windows-x86_64-zip --compilation_mode=opt -- release
bazel --output_user_root=C:\b run --verbose_failures --define version=%VER% //c:deploy-windows-x86_64-zip --compilation_mode=opt -- release
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We lack symbols for Windows path. It started failing even within the Rust build steps, so we can't even change these names. Right now it has just several free symbols until 260...

IF %errorlevel% NEQ 0 EXIT /b %errorlevel%
2 changes: 1 addition & 1 deletion .circleci/windows/clib/deploy_snapshot.bat
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ SET DEPLOY_ARTIFACT_PASSWORD=%REPO_TYPEDB_PASSWORD%

git rev-parse HEAD > version_snapshot.txt
set /p VER=<version_snapshot.txt
bazel --output_user_root=C:\bazel run --verbose_failures --define version=%VER% //c:deploy-windows-x86_64-zip -- snapshot
bazel --output_user_root=C:\b run --verbose_failures --define version=%VER% //c:deploy-windows-x86_64-zip -- snapshot
IF %errorlevel% NEQ 0 EXIT /b %errorlevel%
4 changes: 2 additions & 2 deletions .circleci/windows/clib/test_assembly.bat
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ choco install 7zip.portable --limit-output --yes --no-progress
choco install cmake.install --version 3.27.0 --installargs '"ADD_CMAKE_TO_PATH=User"' --limit-output --yes --no-progress
CALL refreshenv

bazel --output_user_root=C:\bazel build @vaticle_typedb_artifact_windows-x86_64//file
bazel --output_user_root=C:\b build @vaticle_typedb_artifact_windows-x86_64//file
powershell -Command "Move-Item -Path bazel-typedb-driver\external\vaticle_typedb_artifact_windows-x86_64\file\typedb-server-windows* -Destination typedb-server-windows.zip"
7z x typedb-server-windows.zip
powershell -Command "Move-Item -Path typedb-server-windows-* -Destination typedb-server-windows"

bazel --output_user_root=C:\bazel build //c:assemble-windows-x86_64-zip
bazel --output_user_root=C:\b build //c:assemble-windows-x86_64-zip
mkdir test_assembly_clib
pushd test_assembly_clib
7z x ..\bazel-bin\c\typedb-driver-clib-windows-x86_64.zip
Expand Down
2 changes: 1 addition & 1 deletion .circleci/windows/cpp/deploy_release.bat
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ SET DEPLOY_ARTIFACT_USERNAME=%REPO_TYPEDB_USERNAME%
SET DEPLOY_ARTIFACT_PASSWORD=%REPO_TYPEDB_PASSWORD%

SET /p VER=<VERSION
bazel --output_user_root=C:\bazel run --verbose_failures --define version=%VER% //cpp:deploy-windows-x86_64-zip --compilation_mode=opt -- release
bazel --output_user_root=C:\b run --verbose_failures --define version=%VER% //cpp:deploy-windows-x86_64-zip --compilation_mode=opt -- release
IF %errorlevel% NEQ 0 EXIT /b %errorlevel%
2 changes: 1 addition & 1 deletion .circleci/windows/cpp/deploy_snapshot.bat
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,5 @@ SET DEPLOY_ARTIFACT_PASSWORD=%REPO_TYPEDB_PASSWORD%

git rev-parse HEAD > version_snapshot.txt
set /p VER=<version_snapshot.txt
bazel --output_user_root=C:\bazel run --verbose_failures --define version=%VER% //cpp:deploy-windows-x86_64-zip -- snapshot
bazel --output_user_root=C:\b run --verbose_failures --define version=%VER% //cpp:deploy-windows-x86_64-zip -- snapshot
IF %errorlevel% NEQ 0 EXIT /b %errorlevel%
4 changes: 2 additions & 2 deletions .circleci/windows/cpp/test_assembly.bat
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ choco install 7zip.portable --limit-output --yes --no-progress
choco install cmake.install --version 3.27.0 --installargs '"ADD_CMAKE_TO_PATH=User"' --limit-output --yes --no-progress
CALL refreshenv

bazel --output_user_root=C:\bazel build @vaticle_typedb_artifact_windows-x86_64//file
bazel --output_user_root=C:\b build @vaticle_typedb_artifact_windows-x86_64//file
powershell -Command "Move-Item -Path bazel-typedb-driver\external\vaticle_typedb_artifact_windows-x86_64\file\typedb-server-windows* -Destination typedb-server-windows.zip"
7z x typedb-server-windows.zip
powershell -Command "Move-Item -Path typedb-server-windows-* -Destination typedb-server-windows"

bazel --output_user_root=C:\bazel build //cpp:assemble-windows-x86_64-zip
bazel --output_user_root=C:\b build //cpp:assemble-windows-x86_64-zip
mkdir test_assembly_cpp
pushd test_assembly_cpp
7z x ..\bazel-bin\cpp\typedb-driver-cpp-windows-x86_64.zip
Expand Down
28 changes: 28 additions & 0 deletions .circleci/windows/csharp/deploy_release.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
@echo off
REM Licensed to the Apache Software Foundation (ASF) under one
REM or more contributor license agreements. See the NOTICE file
REM distributed with this work for additional information
REM regarding copyright ownership. The ASF licenses this file
REM to you under the Apache License, Version 2.0 (the
REM "License"); you may not use this file except in compliance
REM with the License. You may obtain a copy of the License at
REM
REM http://www.apache.org/licenses/LICENSE-2.0
REM
REM Unless required by applicable law or agreed to in writing,
REM software distributed under the License is distributed on an
REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
REM KIND, either express or implied. See the License for the
REM specific language governing permissions and limitations
REM under the License.

REM needs to be called such that software installed
REM by Chocolatey in prepare.bat is accessible
CALL refreshenv

ECHO Building and deploying windows package...
SET DEPLOY_NUGET_API_KEY=%REPO_NUGET_TOKEN%

SET /p VER=<VERSION
bazel --output_user_root=C:/b run --verbose_failures --define version=%VER% //csharp:driver-csharp-runtime-push --compilation_mode=opt -- release
IF %errorlevel% NEQ 0 EXIT /b %errorlevel%
Loading