Skip to content

Commit 6ca8b9c

Browse files
committed
update dotnet5sdk
1 parent 200bcb7 commit 6ca8b9c

File tree

2 files changed

+40
-25
lines changed

2 files changed

+40
-25
lines changed

.github/workflows/docker-deploy-ubuntu20.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ on:
99

1010
env:
1111
DEBIAN_FRONTEND: noninteractive
12-
DOCKER_IMAGE_NAME: "ubuntu20-dotnet5sdk-opencv4.5.3"
12+
DOCKER_IMAGE_NAME1: "ubuntu20-dotnet5-opencv4.5.3"
13+
DOCKER_IMAGE_NAME2: "ubuntu20-dotnet5sdk-opencv4.5.3"
1314

1415
jobs:
1516
build:
@@ -29,13 +30,16 @@ jobs:
2930

3031
- name: docker build
3132
run: |
32-
cd docker/${DOCKER_IMAGE_NAME}
33-
docker build -t ghcr.io/shimat/opencvsharp/${DOCKER_IMAGE_NAME}:${{ github.event.inputs.docker_image_tag }} .
33+
cd docker/${DOCKER_IMAGE_NAME1}
34+
docker build -t ghcr.io/shimat/opencvsharp/${DOCKER_IMAGE_NAME1}:${{ github.event.inputs.docker_image_tag }} .
35+
cd docker/${DOCKER_IMAGE_NAME2}
36+
docker build -t ghcr.io/shimat/opencvsharp/${DOCKER_IMAGE_NAME2}:${{ github.event.inputs.docker_image_tag }} .
3437
3538
- name: docker login
3639
run: |
3740
echo ${{secrets.GH_PACKAGES_PAT}} | docker login ghcr.io -u shimat --password-stdin
3841
3942
- name: docker push
4043
run: |
41-
docker push ghcr.io/shimat/opencvsharp/${DOCKER_IMAGE_NAME}:${{ github.event.inputs.docker_image_tag }}
44+
docker push ghcr.io/shimat/opencvsharp/${DOCKER_IMAGE_NAME1}:${{ github.event.inputs.docker_image_tag }}
45+
docker push ghcr.io/shimat/opencvsharp/${DOCKER_IMAGE_NAME2}:${{ github.event.inputs.docker_image_tag }}

docker/ubuntu20-dotnet5sdk-opencv4.5.3/Dockerfile

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mcr.microsoft.com/dotnet/sdk:5.0-focal
1+
FROM mcr.microsoft.com/dotnet/aspnet:5.0-focal as builder
22

33
ENV DEBIAN_FRONTEND=noninteractive
44
ENV OPENCV_VERSION=4.5.3
@@ -97,12 +97,19 @@ RUN mkdir /opencvsharp/make && cd /opencvsharp/make && \
9797
make -j$(nproc) && make install && \
9898
rm -rf /opencv && \
9999
rm -rf /opencv_contrib && \
100-
mkdir /artifacts && \
101-
cp /opencvsharp/make/OpenCvSharpExtern/libOpenCvSharpExtern.so /artifacts/
100+
cp /opencvsharp/make/OpenCvSharpExtern/libOpenCvSharpExtern.so /usr/lib/
101+
102102

103-
# Test OpenCvSharpExtern
104-
RUN cp artifacts/libOpenCvSharpExtern.so /usr/lib/ && \
105-
echo "\n\
103+
########## Test native .so file ##########
104+
105+
FROM mcr.microsoft.com/dotnet/sdk:5.0-focal
106+
RUN apt-get update && apt-get -y install --no-install-recommends gcc
107+
# /usr/lib/libOpenCvSharpExtern.so
108+
# /usr/local/lib/libopencv_*.a
109+
COPY --from=builder /usr/lib /usr/lib
110+
#COPY --from=builder /usr/local/lib /usr/local/lib
111+
112+
RUN echo "\n\
106113
#include <stdio.h> \n\
107114
int core_Mat_sizeof(); \n\
108115
int main(){ \n\
@@ -111,24 +118,21 @@ int main(){ \n\
111118
return 0; \n\
112119
}" > /test.c && \
113120
gcc -I./ -L./ test.c -o test -lOpenCvSharpExtern && \
114-
LD_LIBRARY_PATH=. ./test && \
115-
rm -f /test*
121+
LD_LIBRARY_PATH=. ./test
116122

117-
# Install Build the C# part of OpenCvSharp
118-
#RUN cd /opencvsharp/src/OpenCvSharp && \
119-
# dotnet build -c Release -f netstandard2.1 && \
120-
# cd /opencvsharp/src/OpenCvSharp.Blob && \
121-
# dotnet build -c Release -f netstandard2.1 && \
122-
# cd /opencvsharp/src/OpenCvSharp.Extensions && \
123-
# dotnet build -c Release -f netstandard2.1 && \
124-
# cp /opencvsharp/src/OpenCvSharp/bin/Release/netstandard2.1/* /artifacts/ && \
125-
# cp /opencvsharp/src/OpenCvSharp.Blob/bin/Release/netstandard2.1/* /artifacts/ && \
126-
# cp /opencvsharp/src/OpenCvSharp.Extensions/bin/Release/netstandard2.1/* /artifacts/
127123

128-
# Test OpenCvSharp
129-
#RUN dotnet test /opencvsharp/test/OpenCvSharp.Tests/OpenCvSharp.Tests.csproj -c Release -f netcoreapp3.1 --runtime ubuntu.18.04-x64 --logger "trx;LogFileName=test-results.trx" < /dev/null
124+
########## Test .NET class libraries ##########
125+
126+
FROM mcr.microsoft.com/dotnet/sdk:5.0-focal
127+
COPY --from=builder /usr/lib /usr/lib
128+
# Install Build the C# part of OpenCvSharp
129+
RUN git clone https://github.com/shimat/opencvsharp.git && cd opencvsharp
130+
RUN cd /opencvsharp/src/OpenCvSharp && \
131+
dotnet build -c Release -f netcoreapp3.1 && \
132+
cd /opencvsharp/src/OpenCvSharp.Extensions && \
133+
dotnet build -c Release -f netcoreapp2.1
130134

131-
RUN rm -rf /opencvsharp
135+
RUN dotnet test /opencvsharp/test/OpenCvSharp.Tests/OpenCvSharp.Tests.csproj -c Release -f net5.0 --runtime ubuntu.20.04-x64 --logger "trx;LogFileName=test-results.trx" < /dev/null
132136

133137
# Simple console app test using NuGet
134138
#RUN dotnet new console -f netcoreapp3.1 -o "ConsoleApp01" && cd /ConsoleApp01 && \
@@ -147,3 +151,10 @@ RUN rm -rf /opencvsharp
147151
# rm -rf /ConsoleApp01
148152

149153
#RUN ldd /artifacts/libOpenCvSharpExtern.so
154+
155+
156+
157+
########## Final image ##########
158+
159+
FROM mcr.microsoft.com/dotnet/sdk:5.0-focal as final
160+
COPY --from=builder /usr/lib /usr/lib

0 commit comments

Comments
 (0)