[ovs-dev] [PATCH 2/2] appveyor: Provide a autobuild service for Windows.

Gurucharan Shetty shettyg at nicira.com
Thu Feb 5 17:56:03 UTC 2015


The appveyor.yml file added through this commit lets
AppVeyor auto build service to run a build of OVS on
Windows platform.

Signed-off-by: Gurucharan Shetty <gshetty at nicira.com>
---
 INSTALL.Windows.md |    9 +++++++++
 Makefile.am        |    1 +
 appveyor.yml       |   43 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 53 insertions(+)
 create mode 100644 appveyor.yml

diff --git a/INSTALL.Windows.md b/INSTALL.Windows.md
index 9b4537c..deaed9e 100644
--- a/INSTALL.Windows.md
+++ b/INSTALL.Windows.md
@@ -247,6 +247,15 @@ type: External network', in the HyperV virtual network switch configuration.
 this is still a work in progress. Till the support is complete we recommend
 disabling TX/RX offloads for both the VM's as well as the HyperV.
 
+Windows autobuild service
+-------------------------
+
+AppVeyor (appveyor.com) provides a free Windows autobuild service for
+opensource projects.  Open vSwitch has integration with AppVeyor for
+continuous build.  A developer can build test his changes for Windows by
+logging into appveyor.com using a github account, creating a new project
+by linking it to his developement repository in github and triggering
+a new build.
 
 TODO
 ----
diff --git a/Makefile.am b/Makefile.am
index 3e5e0b2..28496b3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -65,6 +65,7 @@ PYCOV_CLEAN_FILES = build-aux/check-structs,cover
 # A list of Markdown-formatted documentation that will automatically be
 # included in the "make dist-docs" output.
 docs = \
+	appveyor.yml \
 	CONTRIBUTING.md \
 	CodingStyle.md \
 	DESIGN.md \
diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 0000000..da29b10
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,43 @@
+version: 1.0.{build}
+branches:
+  only: 
+  - master
+clone_folder: C:\openvswitch
+init:
+- ps: >-
+    mkdir C:\pthreads-win32
+
+    mkdir C:\ovs-build-downloads
+
+    $source = "ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-9-1-release.zip"
+
+    $destination = "C:\pthreads-win32\pthreads-win32.zip"
+
+    Invoke-WebRequest $source -OutFile $destination
+
+    $source = "http://slproweb.com/download/Win32OpenSSL-1_0_1L.exe"
+
+    $destination = "C:\ovs-build-downloads\Win32OpenSSL-1_0_1L.exe"
+
+    Invoke-WebRequest $source -OutFile $destination
+
+    cd C:\pthreads-win32
+
+    7z x C:\pthreads-win32\pthreads-win32.zip
+
+    cd C:\ovs-build-downloads
+
+    .\Win32OpenSSL-1_0_1L.exe /silent /verysilent /sp- /suppressmsgboxes
+
+    Start-Sleep -s 30
+
+    cd C:\openvswitch
+
+build_script:
+- '"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\VsDevCmd"'
+- C:\MinGW\msys\1.0\bin\bash -lc "echo \"C:/MinGW /mingw\" > /etc/fstab"
+- C:\MinGW\msys\1.0\bin\bash -lc "cp /c/pthreads-win32/Pre-built.2/dll/x86/*.dll /c/openvswitch/."
+- C:\MinGW\msys\1.0\bin\bash -lc "mv /bin/link.exe /bin/link_copy.exe"
+- C:\MinGW\msys\1.0\bin\bash -lc "cd /c/openvswitch && ./boot.sh"
+- C:\MinGW\msys\1.0\bin\bash -lc "cd /c/openvswitch && ./configure CC=build-aux/cccl LD=\"`which link`\" LIBS=-lws2_32 --with-pthread=C:/pthreads-win32/Pre-built.2 --with-openssl=C:/OpenSSL-Win32"
+- C:\MinGW\msys\1.0\bin\bash -lc "cd /c/openvswitch && make"
-- 
1.7.9.5




More information about the dev mailing list