Skip to content
This repository has been archived by the owner on Mar 31, 2021. It is now read-only.

Commit

Permalink
Opendistro 1.7 (#91)
Browse files Browse the repository at this point in the history
* OpensDistro Release 1.7.0

* Change driver package version to 1.7.0.0

* Add release Github workflow triggred on tags

* Debug Mac installer

* Fix mac installer (#87)

* remove RTTI

* shared_libs

* aws sdk static build for mac

* update workflow for static build on mac

* adding tag

* Instructions for signing installers (#84)

* Add installer signing doc

* Update mac instructions

* Add supported OS versions (#88)

* Sync with main.yml workflow

* Create sql-odbc.release-notes-1.7.0.0.md (#90)

* Create sql-odbc.release-notes-1.7.0.0.md

* update release notes

Co-authored-by: Zhongnan Su <[email protected]>

Co-authored-by: Abbas Hussain <[email protected]>
Co-authored-by: Rupal <[email protected]>
Co-authored-by: Abbas Hussain <[email protected]>
Co-authored-by: Zhongnan Su <[email protected]>
  • Loading branch information
5 people authored May 14, 2020
1 parent 54768bc commit f693952
Show file tree
Hide file tree
Showing 4 changed files with 210 additions and 2 deletions.
147 changes: 147 additions & 0 deletions .github/workflows/release-workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
name: Build and Release SQL-ODBC
# This workflow is triggered on creating tags to master or an opendistro release branch
on:
push:
tags:
- 'v*'

jobs:
build-mac:
runs-on: macos-latest
steps:
- uses: actions/checkout@v1
- name: run-cppcheck
run: |
brew install cppcheck
sh run_cppcheck.sh
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: upload-cppcheck-results
if: failure()
uses: actions/upload-artifact@v1
with:
name: cppcheck-results
path: cppcheck-results.log
- name: get-dependencies
run: |
brew unlink unixodbc
brew install curl
brew install cmake
brew install libiodbc
- name: aws-sdk-cpp-setup
run: |
sh aws_sdk_cpp_setup.sh
- name: configure
run: |
prefix_path=$(pwd)
mkdir cmake-build
cd cmake-build
cmake ../src -DCMAKE_INSTALL_PREFIX=$prefix_path/AWSSDK/ -DCMAKE_BUILD_TYPE=Release -DBUILD_ONLY="core" -DCUSTOM_MEMORY_MANAGEMENT="OFF" -DENABLE_RTTI="OFF" -DENABLE_TESTING="OFF"
cd ..
- name: build-driver
run: |
cmake --build cmake-build
- name: build-installer
if: success()
run: |
cd cmake-build
cmake ../src
make
cpack .
cd ..
- name: create-output
if: success()
run: |
mkdir build
mkdir test-output
mkdir installer
cp ./lib64/*.dylib build
cp ./lib64/*.a build
cp $(ls -d bin64/* | grep -v "\.") build
cp ./cmake-build/*.pkg installer
- name: upload-build
if: success()
uses: actions/upload-artifact@v1
with:
name: mac-build
path: build
- name: upload-installer
if: success()
uses: actions/upload-artifact@v1
with:
name: mac-installer
path: installer
- name: upload-artifacts-s3
if: success()
run: |
cd installer
mac_installer=`ls -1t *.pkg | grep "ODFE SQL ODBC Driver" | head -1`
echo $mac_installer
aws s3 cp "$mac_installer" s3://artifacts.opendistroforelasticsearch.amazon.com/downloads/elasticsearch-clients/opendistro-sql-odbc/mac/
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v1
- name: add-msbuild-to-path
uses: microsoft/[email protected]
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: aws-sdk-cpp-setup
run: |
.\aws_sdk_cpp_setup.ps1
- name: configure
run: |
$prefix_path = (pwd).path
mkdir cmake-build
cd cmake-build
cmake ..\\src -D CMAKE_INSTALL_PREFIX=$prefix_path\AWSSDK\
cd ..
- name: build-driver
run: |
cmake --build cmake-build --config Release
- name: build-installer
if: success()
run: |
cd cmake-build
cmake ..\\src -D CMAKE_INSTALL_PREFIX=$prefix_path\AWSSDK\ -D BUILD_WITH_TESTS=OFF
msbuild .\PACKAGE.vcxproj -p:Configuration=Release
cd ..
- name: create-output
if: always()
run: |
mkdir build
mkdir test-output
mkdir installer
cp .\\bin64\\Release\\*.dll build
cp .\\bin64\\Release\\*.exe build
cp .\\lib64\\Release\\*.lib build
cp .\\cmake-build\\*.msi installer
- name: upload-build
if: always()
uses: actions/upload-artifact@v1
with:
name: windows-build
path: build
- name: upload-installer
if: always()
uses: actions/upload-artifact@v1
with:
name: windows-installer
path: installer
- name: upload-artifacts-s3
if: success()
shell: bash
run: |
cd installer
windows_installer=`ls -1t *.msi | grep "ODFE SQL ODBC Driver" | head -1`
echo $windows_installer
aws s3 cp "$windows_installer" s3://artifacts.opendistroforelasticsearch.amazon.com/downloads/elasticsearch-clients/opendistro-sql-odbc/windows/
13 changes: 13 additions & 0 deletions opendistro-elasticsearch-odbc.release-notes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## 2020-05-05, Version 1.7

### Notable Changes

This is the first release of OpenDistro For ELasticsearch ODBC driver.

OpenDistro ODBC provides a driver for ODBC connectivity for OpenDistro SQL plugin. The driver has been developed from scratch and offers the following features in this initial release:

* ODBC API implementation as per ODBC 3.51 specifications
* Support for MacOS and Windows installers
* Support for HTTP BASIC and AWS SIGV4 authentication mechanisms
* Full support for Elasticsearch Datatypes: BOOLEAN, BYTE, SHORT, INTEGER, LONG, HALF_FLOAT, FLOAT, DOUBLE, SCALED_FLOAT, KEYWORD, TEXT

48 changes: 48 additions & 0 deletions release-notes/sql-odbc.release-notes-1.7.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
## 2020-05-05, Version 1.7

This is the first release of OpenDistro For ELasticsearch ODBC driver.

OpenDistro ODBC provides a driver for ODBC connectivity for OpenDistro SQL plugin. The driver has been developed from scratch and offers the following features in this initial release:

* ODBC API implementation as per ODBC 3.51 specifications
* Support for MacOS and Windows installers
* Support for HTTP BASIC and AWS SIGV4 authentication mechanisms
* Full support for Elasticsearch Datatypes: BOOLEAN, BYTE, SHORT, INTEGER, LONG, HALF_FLOAT, FLOAT, DOUBLE, SCALED_FLOAT, KEYWORD, TEXT

### Features

* Feature[#7](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/7): Add support for connection string abbreviations

* Feature[#2](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/2): Connection string refactoring and registry updates

* Feature[#27](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/27): Simple Windows Installer


* Feature[#78](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/78): Add fetch_size for pagination support


### Documentation

* [Pagination support design document](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/40)
* [Update README for authentication & encryption configuration options](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/33)
* [Instructions for signing installers](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/84)



### BugFixes

* [Fix AWS authentication for Tableau on Mac](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/9)

* [Mac installer fixes](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/73)


* [Fix General installer components](https://github.com/opendistro-for-elasticsearch/sql-odbc/pull/69)









4 changes: 2 additions & 2 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ set(INSTALL_SRC "${CMAKE_CURRENT_SOURCE_DIR}/installer")
set(DSN_INSTALLER_SRC "${CMAKE_CURRENT_SOURCE_DIR}/DSNInstaller")

# ODBC Driver version
set(DRIVER_PACKAGE_VERSION "0.2.0")
set(DRIVER_PACKAGE_VERSION_COMMA_SEPARATED "0,2,0")
set(DRIVER_PACKAGE_VERSION "1.7.0.0")
set(DRIVER_PACKAGE_VERSION_COMMA_SEPARATED "1,7,0,0")
add_compile_definitions( ES_ODBC_VERSION="${DRIVER_PACKAGE_VERSION}"
# Comma separated version is required for odbc administrator's driver file.
ES_ODBC_DRVFILE_VERSION=${DRIVER_PACKAGE_VERSION_COMMA_SEPARATED} )
Expand Down

0 comments on commit f693952

Please sign in to comment.