From cc2586d250d7420ede652b6e8900e3d8e3febd03 Mon Sep 17 00:00:00 2001 From: Leonard Gram Date: Mon, 20 Jan 2020 08:35:45 +0100 Subject: [PATCH] CI: MSI for Enterprise (#21569) * CI: ee msi build * shellcheck * Fake it so that we get a ee msi build on pull request runs * fix error in prep job * save msi for testing * get enterprise zip * Fixes to version and hash detection. * Removes ci test code --- .circleci/config.yml | 51 ++++++++++++++- scripts/build/ci-msi-build/Dockerfile | 13 ++++ scripts/build/ci-msi-build/ci-msi-build-ee.sh | 29 +++++++++ .../build/ci-msi-build/ci-msi-build-oss.sh | 4 +- .../{oss => msigenerator}/Makefile | 0 .../{oss => msigenerator}/cache/nssm-2.24.zip | Bin .../{oss => msigenerator}/ci-wrapper.sh | 0 .../{oss => msigenerator}/docker-compose.yml | 0 .../{oss => msigenerator}/generator/build.py | 58 +++++++++++------- .../{oss => msigenerator}/generator/utils.py | 15 +++-- .../{oss => msigenerator}/light.exe.config | 0 .../{oss => msigenerator}/requirements.txt | 0 .../images/grafana_dialog_background.bmp | Bin .../images/grafana_dialog_background.png | Bin .../resources/images/grafana_icon.ico | Bin .../resources/images/grafana_top_banner.bmp | Bin .../resources/images/grafana_top_banner.png | Bin .../images/grafana_top_banner_white.bmp | Bin .../resources/license/EE_LICENSE.rtf | 33 ++++++++++ .../resources/license/LICENSE.md | 0 .../resources/license/LICENSE.rtf | 0 .../templates/common/grafana-firewall.wxs.j2 | 0 .../templates/common/grafana-service.wxs.j2 | 0 .../templates/common/product.wxs.j2 | 2 +- .../oracle/oracle-environment.wxs.j2 | 0 .../{oss => msigenerator}/wrapper.sh | 0 scripts/build/ci-msi-build/testbuild.sh | 11 ++++ 27 files changed, 185 insertions(+), 31 deletions(-) create mode 100644 scripts/build/ci-msi-build/Dockerfile create mode 100755 scripts/build/ci-msi-build/ci-msi-build-ee.sh rename scripts/build/ci-msi-build/{oss => msigenerator}/Makefile (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/cache/nssm-2.24.zip (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/ci-wrapper.sh (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/docker-compose.yml (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/generator/build.py (88%) rename scripts/build/ci-msi-build/{oss => msigenerator}/generator/utils.py (90%) rename scripts/build/ci-msi-build/{oss => msigenerator}/light.exe.config (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/requirements.txt (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/images/grafana_dialog_background.bmp (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/images/grafana_dialog_background.png (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/images/grafana_icon.ico (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/images/grafana_top_banner.bmp (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/images/grafana_top_banner.png (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/images/grafana_top_banner_white.bmp (100%) create mode 100644 scripts/build/ci-msi-build/msigenerator/resources/license/EE_LICENSE.rtf rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/license/LICENSE.md (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/resources/license/LICENSE.rtf (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/templates/common/grafana-firewall.wxs.j2 (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/templates/common/grafana-service.wxs.j2 (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/templates/common/product.wxs.j2 (96%) rename scripts/build/ci-msi-build/{oss => msigenerator}/templates/oracle/oracle-environment.wxs.j2 (100%) rename scripts/build/ci-msi-build/{oss => msigenerator}/wrapper.sh (100%) create mode 100755 scripts/build/ci-msi-build/testbuild.sh diff --git a/.circleci/config.yml b/.circleci/config.yml index 73640f16085..fa9aa14c964 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -448,7 +448,7 @@ jobs: name: ci job started command: './scripts/ci-job-started.sh' - run: - name: install docker + name: install docker command: | apt-get update apt-get install -y docker.io @@ -992,6 +992,33 @@ jobs: command: './scripts/ci-job-succeeded.sh' when: on_success + build-ee-msi: + docker: + - image: grafana/wix-toolset-ci:v3 + steps: + - checkout + - run: + name: ci job started + command: './scripts/ci-job-started.sh' + - attach_workspace: + at: . + - run: + name: Build EE MSI + command: './scripts/build/ci-msi-build/ci-msi-build-ee.sh' + - persist_to_workspace: + root: . + paths: + - enterprise-dist/grafana-*.msi + - enterprise-dist/grafana-*.msi.sha256 + - run: + name: ci job failed + command: './scripts/ci-job-failed.sh' + when: on_fail + - run: + name: ci job succeeded + command: './scripts/ci-job-succeeded.sh' + when: on_success + store-build-artifacts: docker: - image: circleci/node:12 @@ -1172,6 +1199,7 @@ workflows: - mysql-integration-test - postgres-integration-test - build-all-enterprise + - build-ee-msi filters: *filter-only-master - build-oss-msi: requires: @@ -1183,6 +1211,16 @@ workflows: - shellcheck - mysql-integration-test - postgres-integration-test + - build-ee-msi: + requires: + - build-all-enterprise + - test-backend + - test-frontend + - codespell + - lint-go + - shellcheck + - mysql-integration-test + - postgres-integration-test filters: *filter-only-master - end-to-end-test: requires: @@ -1237,6 +1275,7 @@ workflows: - shellcheck - mysql-integration-test - postgres-integration-test + - build-ee-msi filters: *filter-only-release - grafana-docker-release: requires: @@ -1284,6 +1323,16 @@ workflows: - shellcheck - mysql-integration-test - postgres-integration-test + - build-ee-msi: + requires: + - build-all-enterprise + - test-backend + - test-frontend + - codespell + - lint-go + - shellcheck + - mysql-integration-test + - postgres-integration-test filters: *filter-only-release - end-to-end-test-release: requires: diff --git a/scripts/build/ci-msi-build/Dockerfile b/scripts/build/ci-msi-build/Dockerfile new file mode 100644 index 00000000000..6fb525a5108 --- /dev/null +++ b/scripts/build/ci-msi-build/Dockerfile @@ -0,0 +1,13 @@ +FROM grafana/wix-toolset-ci:v3 + +RUN mkdir -p /tmp/dist /tmp/cache && \ + cd /tmp/dist && \ + wget https://dl.grafana.com/enterprise/master/grafana-enterprise-6.6.0-ca61af52pre.windows-amd64.zip && \ + unzip -l *.zip + +COPY . /package-grafana +WORKDIR /package-grafana + +RUN cp ./msigenerator/cache/nssm-2.24.zip /tmp/cache + +RUN cd msigenerator && python3 generator/build.py diff --git a/scripts/build/ci-msi-build/ci-msi-build-ee.sh b/scripts/build/ci-msi-build/ci-msi-build-ee.sh new file mode 100755 index 00000000000..ce548ae61aa --- /dev/null +++ b/scripts/build/ci-msi-build/ci-msi-build-ee.sh @@ -0,0 +1,29 @@ +#!/bin/bash +set -e +WORKING_DIRECTORY=$(pwd) +DIST_DIRECTORY="$WORKING_DIRECTORY/enterprise-dist" +# copy zip file to /tmp/dist +mkdir -p /tmp/dist +cp ./enterprise-dist/*.zip /tmp/dist +echo "Contents of /tmp/dist" +ls -al /tmp/dist + +# nssm download has been unreliable, use a cached copy of it +echo "Caching NSSM" +mkdir -p /tmp/cache +cp ./scripts/build/ci-msi-build/msigenerator/cache/nssm-2.24.zip /tmp/cache + +cd ./scripts/build/ci-msi-build/msigenerator +echo "Building MSI" +python3 generator/build.py "$@" +chmod a+x /tmp/scratch/*.msi +echo "MSI: Copy to $DIST_DIRECTORY" +cp /tmp/scratch/*.msi "$DIST_DIRECTORY" +echo "MSI: Generate SHA256" +MSI_FILE=$(ls "${DIST_DIRECTORY}"/*.msi) +SHA256SUM=$(sha256sum "$MSI_FILE" | cut -f1 -d' ') +echo "$SHA256SUM" > "$MSI_FILE.sha256" +echo "MSI: SHA256 file content:" +cat "$MSI_FILE.sha256" +echo "MSI: contents of $DIST_DIRECTORY" +ls -al "$DIST_DIRECTORY" diff --git a/scripts/build/ci-msi-build/ci-msi-build-oss.sh b/scripts/build/ci-msi-build/ci-msi-build-oss.sh index e0442c708f2..6bf3d5398fa 100755 --- a/scripts/build/ci-msi-build/ci-msi-build-oss.sh +++ b/scripts/build/ci-msi-build/ci-msi-build-oss.sh @@ -10,7 +10,7 @@ ls -al /tmp/dist # nssm download has been unreliable, use a cached copy of it echo "Caching NSSM" mkdir -p /tmp/cache -cp ./scripts/build/ci-msi-build/oss/cache/nssm-2.24.zip /tmp/cache +cp ./scripts/build/ci-msi-build/msigenerator/cache/nssm-2.24.zip /tmp/cache # a build can be specified, which will be pulled down #python3 generator/build.py --build 5.4.3 #echo "LIGHT config" @@ -18,7 +18,7 @@ cp ./scripts/build/ci-msi-build/oss/cache/nssm-2.24.zip /tmp/cache #cat /home/xclient/wix/light.exe.config #cp ./scripts/build/ci-msi-build/oss/light.exe.config /home/xclient/wix/light.exe.config #cat /home/xclient/wix/light.exe.config -cd ./scripts/build/ci-msi-build/oss +cd ./scripts/build/ci-msi-build/msigenerator echo "Building MSI" python3 generator/build.py "$@" chmod a+x /tmp/scratch/*.msi diff --git a/scripts/build/ci-msi-build/oss/Makefile b/scripts/build/ci-msi-build/msigenerator/Makefile similarity index 100% rename from scripts/build/ci-msi-build/oss/Makefile rename to scripts/build/ci-msi-build/msigenerator/Makefile diff --git a/scripts/build/ci-msi-build/oss/cache/nssm-2.24.zip b/scripts/build/ci-msi-build/msigenerator/cache/nssm-2.24.zip similarity index 100% rename from scripts/build/ci-msi-build/oss/cache/nssm-2.24.zip rename to scripts/build/ci-msi-build/msigenerator/cache/nssm-2.24.zip diff --git a/scripts/build/ci-msi-build/oss/ci-wrapper.sh b/scripts/build/ci-msi-build/msigenerator/ci-wrapper.sh similarity index 100% rename from scripts/build/ci-msi-build/oss/ci-wrapper.sh rename to scripts/build/ci-msi-build/msigenerator/ci-wrapper.sh diff --git a/scripts/build/ci-msi-build/oss/docker-compose.yml b/scripts/build/ci-msi-build/msigenerator/docker-compose.yml similarity index 100% rename from scripts/build/ci-msi-build/oss/docker-compose.yml rename to scripts/build/ci-msi-build/msigenerator/docker-compose.yml diff --git a/scripts/build/ci-msi-build/oss/generator/build.py b/scripts/build/ci-msi-build/msigenerator/generator/build.py similarity index 88% rename from scripts/build/ci-msi-build/oss/generator/build.py rename to scripts/build/ci-msi-build/msigenerator/generator/build.py index 655b09c0d14..0a0922e455a 100755 --- a/scripts/build/ci-msi-build/oss/generator/build.py +++ b/scripts/build/ci-msi-build/msigenerator/generator/build.py @@ -103,7 +103,7 @@ def remove_long_paths(): print('Skipped: {}'.format(file)) -def build_oss(zip_file, extracted_name, PRODUCT_VERSION, config, features): +def build_msi(zip_file, extracted_name, PRODUCT_VERSION, grafana_hash, config, features, is_enterprise): # keep reference to source directory, will need to switch back and # forth during the process src_dir = os.getcwd() @@ -112,6 +112,7 @@ def build_oss(zip_file, extracted_name, PRODUCT_VERSION, config, features): os.mkdir('/tmp/a') target_dir_name = '/tmp/a' extract_zip(zip_file, target_dir_name) + os.system('ls -al /tmp/a') # the zip file contains a version, which will not work when upgrading, # and ends up with paths longer # than light.exe can parse (windows issue) @@ -229,8 +230,17 @@ def build_oss(zip_file, extracted_name, PRODUCT_VERSION, config, features): os.system(cmd) except Exception as ex: print(ex) + + hash = '' + if grafana_hash: + hash = '-{}'.format(grafana_hash) + # copy to scratch with version included - msi_filename = '/tmp/scratch/{}.windows-amd64.msi'.format(extracted_name) + msi_filename = '/tmp/scratch/grafana-{}{}.windows-amd64.msi'.format(PRODUCT_VERSION, hash) + + if is_enterprise: + msi_filename = '/tmp/scratch/grafana-enterprise-{}{}.windows-amd64.msi'.format(PRODUCT_VERSION, hash) + shutil.copy2('grafana.msi', msi_filename) os.system('ls -al /tmp/scratch') print('LIGHT COMPLETE') @@ -238,25 +248,36 @@ def build_oss(zip_file, extracted_name, PRODUCT_VERSION, config, features): # extract_dir.cleanup() -def main(file_loader, env, grafana_version, zip_file, extracted_name): +def main(file_loader, env, grafana_version, grafana_hash, zip_file, extracted_name, is_enterprise): UPGRADE_VERSION = OSS_UPGRADE_VERSION GRAFANA_VERSION = grafana_version - PRODUCT_NAME = OSS_PRODUCT_NAME + PRODUCT_TITLE = OSS_PRODUCT_NAME + PRODUCT_NAME = 'GrafanaOSS' # PRODUCT_VERSION=GRAFANA_VERSION # MSI version cannot have anything other # than a x.x.x.x format, numbers only PRODUCT_VERSION = GRAFANA_VERSION.split('-')[0] + LICENSE = 'LICENSE.rtf' + + + if is_enterprise: + UPGRADE_VERSION = ENTERPRISE_UPGRADE_VERSION + PRODUCT_TITLE = ENTERPRISE_PRODUCT_NAME + PRODUCT_NAME = 'GrafanaEnterprise' + LICENSE = 'EE_LICENSE.rtf' + config = { 'grafana_version': PRODUCT_VERSION, 'upgrade_code': UPGRADE_VERSION, 'product_name': PRODUCT_NAME, - 'manufacturer': 'Grafana Labs' + 'manufacturer': 'Grafana Labs', + 'license': LICENSE } features = [ { - 'name': 'GrafanaOSS', - 'title': PRODUCT_NAME, + 'name': PRODUCT_NAME, + 'title': PRODUCT_TITLE, 'component_groups': [ { 'ref_id': 'GrafanaX64', @@ -275,7 +296,7 @@ def main(file_loader, env, grafana_version, zip_file, extracted_name): ] } ] - build_oss(zip_file, extracted_name, PRODUCT_VERSION, config, features) + build_msi(zip_file, extracted_name, PRODUCT_VERSION, grafana_hash, config, features, is_enterprise) if __name__ == '__main__': @@ -289,13 +310,6 @@ if __name__ == '__main__': '--premium', help='Include premium plugins', dest='premium', action='store_true') - parser.add_argument( - '-e', - '--enterprise', - help='Use Enterprise build', - dest='enterprise', - action='store_true') - parser.set_defaults(enterprise=False, premium=False) parser.add_argument('-b', '--build', help='build to download') args = parser.parse_args() file_loader = FileSystemLoader('templates') @@ -312,17 +326,17 @@ if __name__ == '__main__': else: grafana_version, grafana_hash, is_enterprise = detect_version(DIST_LOCATION) - # check for enterprise flag - if args.enterprise: - grafana_version = 'enterprise-{}'.format(args.build) - # print('Detected Version: {}'.format(grafana_version)) if grafana_hash: print('Detected Hash: {}'.format(grafana_hash)) print('Enterprise: {}'.format(is_enterprise)) if is_enterprise: - zip_file = '{}/grafana-enterprise-{}.windows-amd64.zip'.format(DIST_LOCATION, grafana_version) - extracted_name = 'grafana-enterprise-{}'.format(grafana_version) + if grafana_hash: + zip_file = '{}/grafana-enterprise-{}-{}.windows-amd64.zip'.format(DIST_LOCATION, grafana_version, grafana_hash) + extracted_name = 'grafana-{}-{}'.format(grafana_version, grafana_hash) + else: + zip_file = '{}/grafana-enterprise-{}.windows-amd64.zip'.format(DIST_LOCATION, grafana_version) + extracted_name = 'grafana-{}'.format(grafana_version) else: # the file can have a build hash if grafana_hash: @@ -336,4 +350,4 @@ if __name__ == '__main__': if not os.path.isfile(zip_file): zip_file = get_zip(grafana_version, zip_file) - main(file_loader, env, grafana_version, zip_file, extracted_name) + main(file_loader, env, grafana_version, grafana_hash, zip_file, extracted_name, is_enterprise) diff --git a/scripts/build/ci-msi-build/oss/generator/utils.py b/scripts/build/ci-msi-build/msigenerator/generator/utils.py similarity index 90% rename from scripts/build/ci-msi-build/oss/generator/utils.py rename to scripts/build/ci-msi-build/msigenerator/generator/utils.py index 272c93ac42d..a2891dba72a 100644 --- a/scripts/build/ci-msi-build/oss/generator/utils.py +++ b/scripts/build/ci-msi-build/msigenerator/generator/utils.py @@ -50,13 +50,18 @@ def detect_version(dist_path): print('Skipping detection, no matches') return firstFile = fileList[0] - p1 = re.search(r'grafana-(\d\.\d\.\d)\.windows-amd64.zip$', firstFile) - p2 = re.search(r'grafana-(\d\.\d\.\d)-(.*)\.windows-amd64.zip$', firstFile) + p1 = re.search(r'grafana-(enterprise-)?(\d\.\d\.\d)-(.+)\.windows-amd64\.zip$', firstFile) + p2 = re.search(r'grafana-(enterprise-)?(\d\.\d\.\d)\.windows-amd64\.zip$', firstFile) if p1: - detectedVersion = p1.group(1) + detectedVersion = p1.group(2) + detectedHash = p1.group(3) + if p1.group(1) == 'enterprise-': + isEnterprise = True if p2: - detectedVersion = p2.group(1) - detectedHash = p2.group(2) + detectedVersion = p2.group(2) + if p2.group(1) == 'enterprise-': + isEnterprise = True + return detectedVersion, detectedHash, isEnterprise #if os.path.isdir(dist_path + 'enterprise-dist'): diff --git a/scripts/build/ci-msi-build/oss/light.exe.config b/scripts/build/ci-msi-build/msigenerator/light.exe.config similarity index 100% rename from scripts/build/ci-msi-build/oss/light.exe.config rename to scripts/build/ci-msi-build/msigenerator/light.exe.config diff --git a/scripts/build/ci-msi-build/oss/requirements.txt b/scripts/build/ci-msi-build/msigenerator/requirements.txt similarity index 100% rename from scripts/build/ci-msi-build/oss/requirements.txt rename to scripts/build/ci-msi-build/msigenerator/requirements.txt diff --git a/scripts/build/ci-msi-build/oss/resources/images/grafana_dialog_background.bmp b/scripts/build/ci-msi-build/msigenerator/resources/images/grafana_dialog_background.bmp similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/images/grafana_dialog_background.bmp rename to scripts/build/ci-msi-build/msigenerator/resources/images/grafana_dialog_background.bmp diff --git a/scripts/build/ci-msi-build/oss/resources/images/grafana_dialog_background.png b/scripts/build/ci-msi-build/msigenerator/resources/images/grafana_dialog_background.png similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/images/grafana_dialog_background.png rename to scripts/build/ci-msi-build/msigenerator/resources/images/grafana_dialog_background.png diff --git a/scripts/build/ci-msi-build/oss/resources/images/grafana_icon.ico b/scripts/build/ci-msi-build/msigenerator/resources/images/grafana_icon.ico similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/images/grafana_icon.ico rename to scripts/build/ci-msi-build/msigenerator/resources/images/grafana_icon.ico diff --git a/scripts/build/ci-msi-build/oss/resources/images/grafana_top_banner.bmp b/scripts/build/ci-msi-build/msigenerator/resources/images/grafana_top_banner.bmp similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/images/grafana_top_banner.bmp rename to scripts/build/ci-msi-build/msigenerator/resources/images/grafana_top_banner.bmp diff --git a/scripts/build/ci-msi-build/oss/resources/images/grafana_top_banner.png b/scripts/build/ci-msi-build/msigenerator/resources/images/grafana_top_banner.png similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/images/grafana_top_banner.png rename to scripts/build/ci-msi-build/msigenerator/resources/images/grafana_top_banner.png diff --git a/scripts/build/ci-msi-build/oss/resources/images/grafana_top_banner_white.bmp b/scripts/build/ci-msi-build/msigenerator/resources/images/grafana_top_banner_white.bmp similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/images/grafana_top_banner_white.bmp rename to scripts/build/ci-msi-build/msigenerator/resources/images/grafana_top_banner_white.bmp diff --git a/scripts/build/ci-msi-build/msigenerator/resources/license/EE_LICENSE.rtf b/scripts/build/ci-msi-build/msigenerator/resources/license/EE_LICENSE.rtf new file mode 100644 index 00000000000..4e6d477b256 --- /dev/null +++ b/scripts/build/ci-msi-build/msigenerator/resources/license/EE_LICENSE.rtf @@ -0,0 +1,33 @@ +{\rtf1\ansi\ansicpg1252\uc0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deff0\adeff0{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f2\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\f3\fnil\fcharset0 Courier New;}}{ +\colortbl;\red0\green0\blue0;}{\stylesheet{\s0\snext0\sqformat\spriority0\fi0\sb0\sa0\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab0\ai0\af3\afs24\ltrch\b0\i0\fs24\loch\af3\dbch\af3\hich\f3\strike0\ulnone\cf1 Normal;}{\s1\sbasedon0\snext0\styrsid15694742 +\sqformat\spriority0\keepn\fi0\sb240\sa60\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab\ai0\af2\afs32\ltrch\b\i0\fs32\loch\af2\dbch\af2\hich\f2\strike0\ulnone\cf1 heading 1;}{\s2\sbasedon0\snext0\styrsid15694742 +\sqformat\spriority0\keepn\fi0\sb240\sa60\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab\ai\af2\afs28\ltrch\b\i\fs28\loch\af2\dbch\af2\hich\f2\strike0\ulnone\cf1 heading 2;}{\s3\sbasedon0\snext0\styrsid15694742 +\sqformat\spriority0\keepn\fi0\sb240\sa60\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab\ai0\af2\afs26\ltrch\b\i0\fs26\loch\af2\dbch\af2\hich\f2\strike0\ulnone\cf1 heading 3;}{\s4\sbasedon0\snext0\styrsid15694742 +\sqformat\spriority0\keepn\fi0\sb240\sa60\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab\ai0\af3\afs28\ltrch\b\i0\fs28\loch\af3\dbch\af3\hich\f3\strike0\ulnone\cf1 heading 4;}{\s5\sbasedon0\snext0\styrsid15694742 +\sqformat\spriority0\fi0\sb240\sa60\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab\ai\af3\afs26\ltrch\b\i\fs26\loch\af3\dbch\af3\hich\f3\strike0\ulnone\cf1 heading 5;}{\s6\sbasedon0\snext0\styrsid15694742\sqformat\spriority0\fi0\sb240\sa60 +\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab\ai0\af3\afs22\ltrch\b\i0\fs22\loch\af3\dbch\af3\hich\f3\strike0\ulnone\cf1 heading 6;}{\*\cs10\additive\ssemihidden\spriority0 Default Paragraph Font;}{\s15\sbasedon0\snext15\styrsid15694742 +\sqformat\spriority0\fi0\sb240\sa60\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\qc\faauto\sl240\slmult1\rtlch\ab\ai0\af2\afs32\ltrch\b\i0\fs32\loch\af2\dbch\af2\hich\f2\strike0\ulnone\cf1 Title;}{\s16\sbasedon0\snext16\styrsid15694742\sqformat\spriority0\fi0\sb0\sa60 +\aspalpha\aspnum\adjustright\widctlpar\ltrpar\li0\lin0\ri0\rin0\qc\faauto\sl240\slmult1\rtlch\ab0\ai0\af2\afs24\ltrch\b0\i0\fs24\loch\af2\dbch\af2\hich\f2\strike0\ulnone\cf1 Subtitle;}}{\*\rsidtbl\rsid10976062}{\*\generator Aspose.Words for Java 13.12.0.0;}{\info\version1\edmins0\nofpages1\nofwords0\nofchars0\nofcharsws0}{\mmathPr\mbrkBin0\mbrkBinSub0\mdefJc1\mdispDef1\minterSp0\mintLim0\mintraSp0\mlMargin0\mmathFont0\mnaryLim1\mpostSp0\mpreSp0\mrMargin0\msmallFrac0\mwrapIndent1440\mwrapRight0} +\deflang1033\deflangfe2052\adeflang1025\jexpand\showxmlerrors1\validatexml1{\*\wgrffmtfilter 013f}\viewkind1\viewscale100\fet0\ftnbj\aenddoc\ftnrstcont\aftnrstcont\ftnnar\aftnnrlc\widowctrl\nospaceforul\nolnhtadjtbl\alntblind\lyttblrtgr\dntblnsbdb\noxlattoyen +\wrppunct\nobrkwrptbl\expshrtn\snaptogridincell\asianbrkrule\htmautsp\noultrlspc\useltbaln\splytwnine\ftnlytwnine\lytcalctblwd\allowfieldendsel\lnbrkrule\nouicompat\nofeaturethrottle1\formshade\nojkernpunct\dghspace180\dgvspace180\dghorigin1800\dgvorigin1440\dghshow1\dgvshow1 +\dgmargin\pgbrdrhead\pgbrdrfoot\sectd\sectlinegrid360\pgwsxn12240\pghsxn15840\marglsxn1800\margrsxn1800\margtsxn1440\margbsxn1440\guttersxn0\headery708\footery708\colsx708\ltrsect\pard\plain\itap0\s0\ilvl0\fi0\sb0\sa0\aspalpha\aspnum\adjustright\brdrt\brdrl\brdrb\brdrr\brdrbtw\brdrbar +\widctlpar\ltrpar\li0\lin0\ri0\rin0\ql\faauto\sl240\slmult1\rtlch\ab0\ai0\af3\afs24\ltrch\b0\i0\fs24\loch\af3\dbch\af3\hich\f3\strike0\ulnone\cf1{\rtlch\ab0\ai0\af2\afs22\ltrch\b0\i0\fs22\loch\af2\dbch\af2\hich\f2\strike0\ulnone\cf1 Placeholder}{\rtlch\ab0\ai0\af3\afs22 +\ltrch\b0\i0\fs22\loch\af3\dbch\af3\hich\f3\insrsid10976062\strike0\ulnone\cf1\par}{\*\latentstyles\lsdstimax267\lsdlockeddef0\lsdsemihiddendef0\lsdunhideuseddef0\lsdqformatdef0\lsdprioritydef0{\lsdlockedexcept\lsdqformat1 Normal;\lsdqformat1 heading 1;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 2;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 3 +;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 4;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 5;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 6;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 7;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 8 +;\lsdsemihidden1\lsdunhideused1\lsdqformat1 heading 9;\lsdsemihidden1\lsdunhideused1\lsdqformat1 caption;\lsdqformat1 Title;\lsdqformat1 Subtitle;\lsdqformat1 Strong;\lsdqformat1 Emphasis;\lsdsemihidden1\lsdpriority99 Placeholder Text;\lsdqformat1\lsdpriority1 No Spacing +;\lsdpriority60 Light Shading;\lsdpriority61 Light List;\lsdpriority62 Light Grid;\lsdpriority63 Medium Shading 1;\lsdpriority64 Medium Shading 2;\lsdpriority65 Medium List 1;\lsdpriority66 Medium List 2;\lsdpriority67 Medium Grid 1;\lsdpriority68 Medium Grid 2 +;\lsdpriority69 Medium Grid 3;\lsdpriority70 Dark List;\lsdpriority71 Colorful Shading;\lsdpriority72 Colorful List;\lsdpriority73 Colorful Grid;\lsdpriority60 Light Shading Accent 1;\lsdpriority61 Light List Accent 1;\lsdpriority62 Light Grid Accent 1;\lsdpriority63 Medium Shading 1 Accent 1 +;\lsdpriority64 Medium Shading 2 Accent 1;\lsdpriority65 Medium List 1 Accent 1;\lsdsemihidden1\lsdpriority99 Revision;\lsdqformat1\lsdpriority34 List Paragraph;\lsdqformat1\lsdpriority29 Quote;\lsdqformat1\lsdpriority30 Intense Quote;\lsdpriority66 Medium List 2 Accent 1 +;\lsdpriority67 Medium Grid 1 Accent 1;\lsdpriority68 Medium Grid 2 Accent 1;\lsdpriority69 Medium Grid 3 Accent 1;\lsdpriority70 Dark List Accent 1;\lsdpriority71 Colorful Shading Accent 1;\lsdpriority72 Colorful List Accent 1;\lsdpriority73 Colorful Grid Accent 1 +;\lsdpriority60 Light Shading Accent 2;\lsdpriority61 Light List Accent 2;\lsdpriority62 Light Grid Accent 2;\lsdpriority63 Medium Shading 1 Accent 2;\lsdpriority64 Medium Shading 2 Accent 2;\lsdpriority65 Medium List 1 Accent 2;\lsdpriority66 Medium List 2 Accent 2 +;\lsdpriority67 Medium Grid 1 Accent 2;\lsdpriority68 Medium Grid 2 Accent 2;\lsdpriority69 Medium Grid 3 Accent 2;\lsdpriority70 Dark List Accent 2;\lsdpriority71 Colorful Shading Accent 2;\lsdpriority72 Colorful List Accent 2;\lsdpriority73 Colorful Grid Accent 2 +;\lsdpriority60 Light Shading Accent 3;\lsdpriority61 Light List Accent 3;\lsdpriority62 Light Grid Accent 3;\lsdpriority63 Medium Shading 1 Accent 3;\lsdpriority64 Medium Shading 2 Accent 3;\lsdpriority65 Medium List 1 Accent 3;\lsdpriority66 Medium List 2 Accent 3 +;\lsdpriority67 Medium Grid 1 Accent 3;\lsdpriority68 Medium Grid 2 Accent 3;\lsdpriority69 Medium Grid 3 Accent 3;\lsdpriority70 Dark List Accent 3;\lsdpriority71 Colorful Shading Accent 3;\lsdpriority72 Colorful List Accent 3;\lsdpriority73 Colorful Grid Accent 3 +;\lsdpriority60 Light Shading Accent 4;\lsdpriority61 Light List Accent 4;\lsdpriority62 Light Grid Accent 4;\lsdpriority63 Medium Shading 1 Accent 4;\lsdpriority64 Medium Shading 2 Accent 4;\lsdpriority65 Medium List 1 Accent 4;\lsdpriority66 Medium List 2 Accent 4 +;\lsdpriority67 Medium Grid 1 Accent 4;\lsdpriority68 Medium Grid 2 Accent 4;\lsdpriority69 Medium Grid 3 Accent 4;\lsdpriority70 Dark List Accent 4;\lsdpriority71 Colorful Shading Accent 4;\lsdpriority72 Colorful List Accent 4;\lsdpriority73 Colorful Grid Accent 4 +;\lsdpriority60 Light Shading Accent 5;\lsdpriority61 Light List Accent 5;\lsdpriority62 Light Grid Accent 5;\lsdpriority63 Medium Shading 1 Accent 5;\lsdpriority64 Medium Shading 2 Accent 5;\lsdpriority65 Medium List 1 Accent 5;\lsdpriority66 Medium List 2 Accent 5 +;\lsdpriority67 Medium Grid 1 Accent 5;\lsdpriority68 Medium Grid 2 Accent 5;\lsdpriority69 Medium Grid 3 Accent 5;\lsdpriority70 Dark List Accent 5;\lsdpriority71 Colorful Shading Accent 5;\lsdpriority72 Colorful List Accent 5;\lsdpriority73 Colorful Grid Accent 5 +;\lsdpriority60 Light Shading Accent 6;\lsdpriority61 Light List Accent 6;\lsdpriority62 Light Grid Accent 6;\lsdpriority63 Medium Shading 1 Accent 6;\lsdpriority64 Medium Shading 2 Accent 6;\lsdpriority65 Medium List 1 Accent 6;\lsdpriority66 Medium List 2 Accent 6 +;\lsdpriority67 Medium Grid 1 Accent 6;\lsdpriority68 Medium Grid 2 Accent 6;\lsdpriority69 Medium Grid 3 Accent 6;\lsdpriority70 Dark List Accent 6;\lsdpriority71 Colorful Shading Accent 6;\lsdpriority72 Colorful List Accent 6;\lsdpriority73 Colorful Grid Accent 6 +;\lsdqformat1\lsdpriority19 Subtle Emphasis;\lsdqformat1\lsdpriority21 Intense Emphasis;\lsdqformat1\lsdpriority31 Subtle Reference;\lsdqformat1\lsdpriority32 Intense Reference;\lsdqformat1\lsdpriority33 Book Title;\lsdsemihidden1\lsdunhideused1\lsdpriority37 Bibliography +;\lsdsemihidden1\lsdunhideused1\lsdqformat1\lsdpriority39 TOC Heading;}}} \ No newline at end of file diff --git a/scripts/build/ci-msi-build/oss/resources/license/LICENSE.md b/scripts/build/ci-msi-build/msigenerator/resources/license/LICENSE.md similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/license/LICENSE.md rename to scripts/build/ci-msi-build/msigenerator/resources/license/LICENSE.md diff --git a/scripts/build/ci-msi-build/oss/resources/license/LICENSE.rtf b/scripts/build/ci-msi-build/msigenerator/resources/license/LICENSE.rtf similarity index 100% rename from scripts/build/ci-msi-build/oss/resources/license/LICENSE.rtf rename to scripts/build/ci-msi-build/msigenerator/resources/license/LICENSE.rtf diff --git a/scripts/build/ci-msi-build/oss/templates/common/grafana-firewall.wxs.j2 b/scripts/build/ci-msi-build/msigenerator/templates/common/grafana-firewall.wxs.j2 similarity index 100% rename from scripts/build/ci-msi-build/oss/templates/common/grafana-firewall.wxs.j2 rename to scripts/build/ci-msi-build/msigenerator/templates/common/grafana-firewall.wxs.j2 diff --git a/scripts/build/ci-msi-build/oss/templates/common/grafana-service.wxs.j2 b/scripts/build/ci-msi-build/msigenerator/templates/common/grafana-service.wxs.j2 similarity index 100% rename from scripts/build/ci-msi-build/oss/templates/common/grafana-service.wxs.j2 rename to scripts/build/ci-msi-build/msigenerator/templates/common/grafana-service.wxs.j2 diff --git a/scripts/build/ci-msi-build/oss/templates/common/product.wxs.j2 b/scripts/build/ci-msi-build/msigenerator/templates/common/product.wxs.j2 similarity index 96% rename from scripts/build/ci-msi-build/oss/templates/common/product.wxs.j2 rename to scripts/build/ci-msi-build/msigenerator/templates/common/product.wxs.j2 index cd464804ef1..73780c81916 100644 --- a/scripts/build/ci-msi-build/oss/templates/common/product.wxs.j2 +++ b/scripts/build/ci-msi-build/msigenerator/templates/common/product.wxs.j2 @@ -17,7 +17,7 @@ - + diff --git a/scripts/build/ci-msi-build/oss/templates/oracle/oracle-environment.wxs.j2 b/scripts/build/ci-msi-build/msigenerator/templates/oracle/oracle-environment.wxs.j2 similarity index 100% rename from scripts/build/ci-msi-build/oss/templates/oracle/oracle-environment.wxs.j2 rename to scripts/build/ci-msi-build/msigenerator/templates/oracle/oracle-environment.wxs.j2 diff --git a/scripts/build/ci-msi-build/oss/wrapper.sh b/scripts/build/ci-msi-build/msigenerator/wrapper.sh similarity index 100% rename from scripts/build/ci-msi-build/oss/wrapper.sh rename to scripts/build/ci-msi-build/msigenerator/wrapper.sh diff --git a/scripts/build/ci-msi-build/testbuild.sh b/scripts/build/ci-msi-build/testbuild.sh new file mode 100755 index 00000000000..eb40425ff99 --- /dev/null +++ b/scripts/build/ci-msi-build/testbuild.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +_image="ee-msi-build" +_container="ee-build" + +docker build -t $_image . + +docker run --rm -d --name $_container $_image sleep 100 +docker cp $_container:/tmp/scratch . +docker stop $_container +