Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: chef/omnibus-software
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: twindb/omnibus-software
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Can’t automatically merge. Don’t worry, you can still create the pull request.
Loading
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -13,3 +13,4 @@ gemtags
.gem.tags
.gemtags
.tags_sorted_by_file
.idea/
18 changes: 18 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
language: ruby
cache: bundler
dist: xenial

before_install:
- gem install bundler || true
- bundle --version
- gem update --system
- gem --version

matrix:
include:
- rvm: 2.6.3
- rvm: 2.7.2

bundler_args: --jobs 7

script: bundle exec rake
Original file line number Diff line number Diff line change
@@ -25,4 +25,4 @@
- sed -e '1,/^$$/d' doc/openssl-shared.txt; \
fi; \
fi
cp libcrypto.pc $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig
cp libcrypto.pc $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig
Original file line number Diff line number Diff line change
@@ -17,4 +17,4 @@ index e8d222a..02ec85b 100644
- base=; [ $(LIBNAME) = "crypto" -a -n "$(FIPSCANLIB)" ] && base=-Wl,--image-base,0x63000000; \
fi; \
dll_name=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \
$(PERL) util/mkrc.pl $$dll_name | \
$(PERL) util/mkrc.pl $$dll_name | \
Original file line number Diff line number Diff line change
@@ -17,4 +17,4 @@
+"mingw64", "gcc:-mno-cygwin -DL_ENDIAN -O3 -Wall -DWIN32_LEAN_AND_MEAN -DUNICODE -D_UNICODE::-D_MT:MINGW64:-lws2_32 -lgdi32 -lcrypt32:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT EXPORT_VAR_AS_FN:${x86_64_asm}:mingw64:win32:cygwin-shared:-D_WINDLL:-mno-cygwin:.dll.a",

# UWIN
"UWIN", "cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32",
"UWIN", "cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:win32",
Original file line number Diff line number Diff line change
@@ -3,9 +3,8 @@
@@ -260,7 +260,7 @@
@echo "Tests are not supported with your chosen Configure options"
@ : {- output_on() if !$disabled{tests}; "" -}

-install: install_sw install_ssldirs install_docs
+install: install_sw install_ssldirs

uninstall: uninstall_docs uninstall_sw

uninstall: uninstall_docs uninstall_sw
2 changes: 1 addition & 1 deletion config/software/libffi.rb
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@
version("3.2.1") { source sha256: "d06ebb8e1d9a22d19e38d63fdb83954253f39bedc5d46232a05645685722ca37" }
version("3.3") { source sha256: "72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056" }

source url: "ftp://sourceware.org/pub/libffi/libffi-#{version}.tar.gz"
source url: "https://www.mirrorservice.org/sites/sourceware.org/pub/libffi/libffi-#{version}.tar.gz"

relative_path "libffi-#{version}"

40 changes: 40 additions & 0 deletions config/software/libpcap.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#
# Copyright 2014-2019 Pinterest
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

name "libpcap"
default_version "2.25"

license "GPL-v2"
license_file "LICENSE"
skip_transitive_dependency_licensing true
whitelist_file "#{install_dir}/embedded/sbin/getpcaps"
whitelist_file "#{install_dir}/embedded/sbin/capsh"
whitelist_file "#{install_dir}/embedded/sbin/getcap"
whitelist_file "#{install_dir}/embedded/sbin/setcap"

version("2.25") { source sha256: "693c8ac51e983ee678205571ef272439d83afe62dd8e424ea14ad9790bc35162" }

source url: "http://archive.ubuntu.com/ubuntu/pool/main/libc/libcap2/libcap2_#{version}.orig.tar.xz"

relative_path "libcap-#{version}"

build do
env = with_standard_compiler_flags(with_embedded_path)
env["prefix"] = "#{install_dir}/embedded"
env["LD_LIBRARY_PATH"] = "#{install_dir}/embedded/lib64"
make "-j #{workers}", env: env
make "-j #{workers} install", env: env
end
2 changes: 1 addition & 1 deletion config/software/libtool.rb
Original file line number Diff line number Diff line change
@@ -27,7 +27,7 @@
version("2.4.2") { source md5: "d2f3b7d4627e69e13514a40e72a24d50" }
version("2.4") { source md5: "b32b04148ecdd7344abc6fe8bd1bb021" }

source url: "https://ftp.gnu.org/gnu/libtool/libtool-#{version}.tar.gz"
source url: "https://s3.amazonaws.com/twindb-release/libtool-#{version}.tar.gz"

relative_path "libtool-#{version}"

2 changes: 1 addition & 1 deletion config/software/ncurses.rb
Original file line number Diff line number Diff line change
@@ -24,7 +24,7 @@

dependency "config_guess"

version("5.9") { source md5: "8cb9c412e5f2d96bc6f459aa8c6282a1", url: "https://ftp.gnu.org/gnu/ncurses/ncurses-5.9.tar.gz" }
version("5.9") { source md5: "8cb9c412e5f2d96bc6f459aa8c6282a1", url: "https://s3.amazonaws.com/twindb-release/ncurses-5.9.tar.gz" }
version("5.9-20150530") { source md5: "bb2cbe1d788d3ab0138fc2734e446b43", url: "ftp://invisible-island.net/ncurses/current/ncurses-5.9-20150530.tgz" }
version("6.0-20150613") { source md5: "0c6a0389d004c78f4a995bc61884a563", url: "ftp://invisible-island.net/ncurses/current/ncurses-6.0-20150613.tgz" }
version("6.0-20150810") { source md5: "78bfcb4634a87b4cda390956586f8f1f", url: "ftp://invisible-island.net/ncurses/current/ncurses-6.0-20150810.tgz" }
3 changes: 2 additions & 1 deletion config/software/openssl.rb
Original file line number Diff line number Diff line change
@@ -27,7 +27,8 @@

# Openssl builds engines as libraries into a special directory. We need to include
# that directory in lib_dirs so omnibus can sign them during macOS deep signing.
lib_dirs lib_dirs.concat ["#{install_dir}/embedded/lib/engines"]
# this fails on omnibus 6.1.9
# lib_dirs lib_dirs.concat ["#{install_dir}/embedded/lib/engines"]

# OpenSSL source ships with broken symlinks which windows doesn't allow.
# So skip error checking with `extract: :lax_tar`
41 changes: 41 additions & 0 deletions config/software/pip.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#
# Copyright:: Copyright (c) 2013-2014 Chef Software, Inc.
# License:: Apache License, Version 2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

name "pip"
default_version "20.0.2"

skip_transitive_dependency_licensing true

dependency "setuptools"

source url: "https://github.com/pypa/pip/archive/#{version}.tar.gz",
extract: "seven_zip"

version("19.1.1") { source sha256: "cce3a3a4cc6f7e1f1d52d0dbe843ebca153ee42660a01acd9248d110c374efa2" }
version("19.3.1") { source sha256: "f12b7a6be2dbbfeefae5f14992c89175ef72ce0fe96452b4f66be855a12841ff" }
version("20.0.2") { source sha256: "00bdc118df4552f654a5ccf0bd3ff1a7d101ee7d7ac899fe9a752363b3f2f070" }

relative_path "pip-#{version}"

build do
if ohai["platform"] == "windows"
command "\"#{windows_safe_path(install_dir)}\\embedded\\python.exe\" setup.py install "\
"--prefix=\"#{windows_safe_path(install_dir)}\\embedded\""
else
command "#{install_dir}/embedded/bin/python setup.py install --prefix=#{install_dir}/embedded"
end
end
3 changes: 2 additions & 1 deletion config/software/pkg-config-lite.rb
Original file line number Diff line number Diff line change
@@ -27,7 +27,8 @@
source md5: "61f05feb6bab0a6bbfab4b6e3b2f44b6"
end

source url: "http://downloads.sourceforge.net/project/pkgconfiglite/#{version}/pkg-config-lite-#{version}.tar.gz"
# source url: "http://downloads.sourceforge.net/project/pkgconfiglite/#{version}/pkg-config-lite-#{version}.tar.gz"
source url: "https://s3.amazonaws.com/twindb-release/pkg-config-lite-#{version}.tar.gz"

relative_path "pkg-config-lite-#{version}"

77 changes: 77 additions & 0 deletions config/software/python3.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
#
# Copyright:: Copyright (c) 2013-2014 Chef Software, Inc.
# Copyright:: Copyright (c) 2016 GitLab B.V.
# License:: Apache License, Version 2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

name "python3"
# If bumping from 3.7.x to something higher, be sure to update the following files with the new path:
# config/software/python-docutils.rb
# files/gitlab-cookbooks/gitaly/recipes/enable.rb
# files/gitlab-cookbooks/gitlab/attributes/default.rb
# spec/chef/recipes/gitaly_spec.rb
# spec/chef/recipes/gitlab-rails_spec.rb
default_version "3.7.3"

dependency "libedit"
dependency "ncurses"
dependency "zlib"
dependency "openssl"
dependency "bzip2"
dependency "libffi"
dependency "liblzma"

whitelist_file "readline.cpython-37m-x86_64-linux-gnu.so" # dependencies provided by libreadline6

license "Python-2.0"
license_file "LICENSE"

skip_transitive_dependency_licensing true

source url: "https://www.python.org/ftp/python/#{version}/Python-#{version}.tgz",
sha256: "d62e3015f2f89c970ac52343976b406694931742fbde2fed8d1ce8ebb4e1f8ff"

relative_path "Python-#{version}"

LIB_PATH = %W{#{install_dir}/embedded/lib #{install_dir}/embedded/lib64 #{install_dir}/lib #{install_dir}/lib64 #{install_dir}/libexec}.freeze

env = {
CFLAGS: "-I#{install_dir}/embedded/include -O3 -g -pipe",
LDFLAGS: "-Wl,-rpath,#{LIB_PATH.join(",-rpath,")} -L#{LIB_PATH.join(" -L")} -I#{install_dir}/embedded/include",
}

build do
# Patches below are based on patches provided by martin.panter, 2016-06-02 06:31
# in https://bugs.python.org/issue13501
# aleks: commenting out patches until they're needed
# patch source: 'configure.patch', target: "configure"
# patch source: 'pyconfig.h.in.patch', target: "pyconfig.h.in"
# patch source: 'readline.c.patch', target: "Modules/readline.c"
# patch source: 'setup.py.patch', target: "setup.py"
env = with_standard_compiler_flags(with_embedded_path)

command %W{./configure --prefix=#{install_dir}/embedded --enable-shared --with-readline=editline --with-dbmliborder=}.join(" "), env: env
make "-j #{workers}", env: env
make "-j #{workers} install", env: env

link "#{install_dir}/embedded/bin/python3", "#{install_dir}/embedded/bin/python"

delete("#{install_dir}/embedded/lib/python3.7/lib-dynload/dbm.*")
delete("#{install_dir}/embedded/lib/python3.7/lib-dynload/_sqlite3.*")
delete("#{install_dir}/embedded/lib/python3.7/test")
command "find #{install_dir}/embedded/lib/python3.7 -name '__pycache__' -type d -print -exec rm -r {} +"
end

project.exclude "embedded/bin/python3*-config"
22 changes: 19 additions & 3 deletions config/software/setuptools.rb
Original file line number Diff line number Diff line change
@@ -15,27 +15,43 @@
#

name "setuptools"
default_version "0.7.7"
default_version "45.1.0"

license "Python Software Foundation"
license_file "https://raw.githubusercontent.com/pypa/setuptools/master/LICENSE"
skip_transitive_dependency_licensing true

dependency "python"
dependency "python3"

version "0.9.8" do
source md5: "243076241781935f7fcad370195a4291"
source url: "https://pypi.org/packages/source/s/setuptools/setuptools-#{version}.tar.gz"
end

version "0.7.7" do
source md5: "0d7bc0e1a34b70a97e706ef74aa7f37f"
source url: "https://pypi.org/packages/source/s/setuptools/setuptools-#{version}.tar.gz"
end

version "20.0" do
source md5: "fb22b2474ca037e0b08f3c3b293e02e6"
source url: "https://pypi.org/packages/source/s/setuptools/setuptools-#{version}.tar.gz"
end

source url: "https://pypi.python.org/packages/source/s/setuptools/setuptools-#{version}.tar.gz"
version "41.0.1" do
source md5: "6404ca798bb9a9073aff3b91b2df35c8"
source url: "https://pypi.org/packages/source/s/setuptools/setuptools-#{version}.zip"
end

version "45.1.0" do
source md5: "98bd6ed6144cff67854e8c0827bd56fb"
source url: "https://pypi.org/packages/source/s/setuptools/setuptools-#{version}.zip"
end

version "51.3.3" do
source md5: "83c2360e359139957c41c0798b2f4b67"
source url: "https://pypi.org/packages/source/s/setuptools/setuptools-#{version}.tar.gz"
end

relative_path "setuptools-#{version}"

29 changes: 29 additions & 0 deletions config/software/xtrabackup.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name "xtrabackup"
default_version "2.4.13"

skip_transitive_dependency_licensing true
dependency "libffi"

version("2.4.12") { source md5: "c086206421a77f7c1ad28771a75cf396" }
version("2.4.13") { source md5: "f8a5170e0e6a6b26125ba935298452c1" }
version("2.4.21") { source md5: "730c00feec1e71157c86e271985c473a" }

source url: "https://s3.amazonaws.com/twindb-release/percona-xtrabackup-#{version}.tar.gz"

relative_path "percona-xtrabackup-#{version}"
whitelist_file "/.*/"

workers = 2

build do
env = with_standard_compiler_flags(with_embedded_path)
command "cmake -DBUILD_CONFIG=xtrabackup_release " \
"-DWITH_MAN_PAGES=OFF -DDOWNLOAD_BOOST=1 " \
"-DWITH_BOOST=#{install_dir}/libboost " \
"-DWITH_SSL=system " \
"-DINSTALL_BINDIR=#{install_dir}/embedded/bin", env: env

make "-j #{workers}", env: env
make :install, env: env
delete "#{install_dir}/libboost"
end
Loading