Commit Graph

88 Commits

Author SHA1 Message Date
edf132509b Backport install-gosu-binary-wrapper from dockbuid
To ensure that our custom sudo wrapper is not
overwritten by a future re-install of sudo, it
is created in /usr/loca/bin

See https://github.com/dockbuild/dockbuild/issues/52
2019-06-08 17:47:03 -04:00
2c9401a8be bump openssl version to openssl-1.0.2s 2019-06-01 04:53:17 -04:00
2b892204e2 install-gosu-binary: Run gpgconf --kill only if option is available 2019-05-22 13:17:53 -04:00
94abe583e3 Fixed gpgconf variable typo in install-gosu-binary.sh 2019-04-22 15:31:22 -04:00
c1acefed25 Updated gpgconf check to handle gpg versions where gpgconf doesn't exist 2019-04-22 18:29:35 +00:00
68d84d6f06 update to fix race condition on GPG temporary file deletion 2019-04-22 16:18:16 +00:00
4095538707 Add missing space in shell if [ ... ] 2019-03-07 08:57:23 -08:00
49f7fc05fe dockcross: Do not try to use -ti under MSYS
Avoid errors, complaints, and suggestions to use winpty.
2019-03-05 17:45:09 -05:00
17ecb746ec dockcross: Do not mount SSH_DIR with MSYS
The mount directory is not correct in this environment.
2019-03-05 17:43:03 -05:00
6c91072ae6 base: Install and upgraded version of setuptools
This addresses the build of a dependency of conan:

 /usr/lib/python2.7/distutils/dist.py:267: UserWarning: Unknown distribution option: 'python_requires'
warnings.warn(msg)
error in isort setup command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers
2019-02-27 14:26:38 -05:00
2f71cda87d base: Bump openssl to 1.0.2r 2019-02-27 14:26:14 -05:00
0bb3b65ebf base: Bump openssh to V_7_9_P1
Also, be explicit with ssl-dir for configuration.
2018-12-16 22:46:44 -05:00
148cb4ce12 base: Bump openssl to 1.0.2q
1.0.2o is now longer served.

OpenSSH does currently not support 1.1 per:

  https://github.com/openssh/openssh-portable/pull/48
2018-12-16 22:46:44 -05:00
8c955feeef Fix dockcross script for users/groups containing spaces
If `id -un` or `id -gn` outputs a name containing a space, e.g. when joined to an AD domain with SSSD, the current `dockcross` script would break and abort with an error: `docker: invalid reference format.`, because it would interpret the part after the space as an image name.
2018-09-27 18:45:48 +02:00
ba72994b41 common: Fix bash shell script invocation
`#!/usr/bin/env bash` should be used to avoid hard paths.

To address:

  dockcross-manylinux-x64: bad interpreter: /bin/bash^M: no such file or directory
2018-08-20 18:12:32 -04:00
9572d88a7a Update dockcross
Fixed CFG_FILE not referring to the variable $CFG_FILE.
2018-07-11 09:27:02 +03:00
c6c4bc078a Fixed trying to read wsl.conf when it's missing 2018-07-10 16:55:17 +03:00
2e1e18e187 common.docker: Speed-up manylinux-x86 image build downloading CMake binary
x86 version of CMake compatible with Centos5 is now available at
https://github.com/dockbuild/CMake/releases
2018-06-09 14:14:19 -04:00
2b93dd5412 Centralize python packages installation adding "install-python-packages" script 2018-06-09 00:07:33 -04:00
2a425ac1ad install-gosu-binary.sh: install sudo wrapper when executing the script 2018-06-09 00:07:33 -04:00
9d4bb8a0eb Merge pull request #229 from Nadav-Eyesight/wsl_better_support
Wsl better support
2018-06-06 21:30:55 -04:00
1f2e82f089 install-gosu-binary: Improve gpg key download listing additonal servers 2018-06-06 14:34:04 -04:00
cb157b7457 common.docker: Optimize image size installing "liquidprompt" in existing RUN command 2018-06-06 13:46:00 -04:00
4dce58cfec common.*: Optimize image size introducing "install-gosu-binary.sh" script
Script was copied from https://github.com/dockbuild/dockbuild
2018-06-06 13:45:59 -04:00
007899c2a5 STYLE: For consistency, rename install-ninja.sh to build-and-install-ninja.sh 2018-06-06 13:45:59 -04:00
71759485f9 build-and-install-cmake.sh: Improve script to speedup build time
* faster source checkout specifying tag and depth
* remove obsolete comments
* disable testing
2018-06-06 13:45:59 -04:00
f1a8f69f4d build-and-install-openssl.sh, install-cmake-binary.sh: Tweak install scripts
* Consistently use "/usr/src" as download and staging area

* install-cmake-binary: Introduce CMAKE_ROOT var

* build-and-install-openssl: Remove redundant -fPIC flag, download openssl sources using "wget"
2018-06-06 13:45:52 -04:00
406a1b60f9 Helper script now works on wsl with modified roots 2018-05-27 11:44:06 +03:00
187afc10d7 Started work on wsl support for every mount point 2018-05-23 17:59:03 +03:00
602fb22cce ENH: Compile git with SSL support
Older versions of git included in older linux distributions are not able
to download source from Github. A newer version is required with a newer
OpenSSL. This requires to also build curl with the same OpenSSL.

CMake is downloaded precompiled if available (64bits system) or compiled
from source otherwise.
2018-04-14 19:12:07 -04:00
53d98cf4ff Fix download of files using up-to-date "curl" instead of "wget"
In few images, curl is only tool that able to download from https
source requiring TLS 1.2
2018-04-13 15:01:54 -04:00
7b76882b56 entrypoint.sh: Account for image tag when updating help text
This commit is a follow up of b7028af (entrypoint.sh: Update help
text so that current image name is used)

It ensures that the suggested script in the help text doesn't include ":"
in its name.

Assuming DEFAULT_DOCKCROSS_IMAGE is set to "dockcross/imagename:latest"

Instead of suggesting:

  [...]
  # docker run --rm dockcross/imagename:latest > dockcross-imagename:latest
  # chmod +x dockcross-imagename:latest
  [...]

it will now suggest

  [...]
  # docker run --rm dockcross/imagename:latest > dockcross-imagename-latest
  # chmod +x dockcross-imagename-latest
  [...]

xref https://github.com/dockbuild/dockbuild/issues/30

[ci skip]
2018-03-29 21:04:52 -04:00
b7028af76e entrypoint.sh: Update help text so that current image name is used
xref https://github.com/dockbuild/dockbuild/issues/30
2018-03-29 04:43:26 -04:00
396d5fe4f8 Changed Windows Subsystem for Linux's PWD to be the physical path rather than relative since windows cannot traverse a relative path inside the Linux subsystem. 2018-01-29 18:20:10 +02:00
6f299349dd bump cmake to v3.10.1 2017-12-21 08:52:51 +01:00
4606b71e68 Missing shift in dockcross -- command [args]
Otherwise `--` is sent as the command...
2017-10-26 15:26:04 +03:00
7dd46fa045 Implement "ct-ng" building, add "linux-mips".
Add a mechanism to construct a full cross-compiler environment using the
"crosstool-ng" cross-compiler building utility. This is implemented in
the new "common.crosstool" include, and augments the "dockcross/base"
base image.

Update Makefile to consolidate Dockerfile generation, notably the
"sed"-based inclusion directives.

Finally, employ all of this to generate a "linux-mips" 32-bit hard-float
MIPS cross-compiler Dockcross image.
2017-09-01 10:09:31 -04:00
b1cef063a1 Fix $HOME directory ownership permissions
BUG:

Creating a new directory under /home/<user>/ from the /work folder does
not work. In fact, going into the home directory and trying to run mkdir
fails as well.

SOLUTION:

Turns out chown -R <user>:<user> was run on $HOME/* instead of on $HOME.
This means that /home/<user> was still under the ownership of root:root,
hence preventing any writes to non-root users.
2017-06-29 08:31:33 -04:00
68962e0e84 Merge pull request #138 from conz27/ssh_support
SSH Support for Git Clone / Checkout
2017-05-13 11:04:25 -04:00
bf0f74cfd3 SSH Support for Git Clone / Checkout
Added SSH support to enable Git checkouts that use SSH instead of
HTTP(S).

The SSH directory is assumed to be in $HOME/.ssh; however:

export SSH_DIR=/my/custom/dir

will override the setting and allow for configurable settings.

$SSH_DIR is then mounted as host-volume in the Docker container and
placed in /home/<user>/.ssh
2017-05-12 23:52:20 -04:00
5e83a6945d manylinux: Do not over ride repositories
The upstream manylinux images have switched to the CentOS Vault
repositories.

This addresses the manylinux-x86 image build.
2017-05-12 22:28:38 -04:00
065448460f manylinux: Add missing repo files
This commit includes files omitted in commit 6e59959 (manylinux: Use
CentOS Vault repositories)

Reported-by: Constantine Grantcharov <cgrantcharov@trustpointinnovation.com>
2017-05-11 00:01:54 -04:00
dd9d902538 Fix "text file busy" error reported when using AUFS storage driver
This commit fixes the following error specific to AUFS:

/dockcross/entrypoint.sh: line 47: /usr/bin/gosu: Text file busy
/dockcross/entrypoint.sh: line 47: /usr/bin/gosu: Success

Thanks @sobolevn
See https://github.com/moby/moby/issues/13594#issuecomment-262441366
2017-05-01 16:35:28 -04:00
6e59959a6a manylinux: Use CentOS Vault repositories
Backported from thewtex/docker-centos-build@26f7fd3

CentOS 5 is no longer supported and requests to obtain information from
the mirrors fails. However, the packages are still available on the
"Vault" mirrors.

Comment out the `mirrorlist` entries and set `enabled=0` in
CentOS-Base.repo, add entries for 5.11 in CentOS-Vault.repo and mark
them `enabled=1`.
2017-05-01 16:35:28 -04:00
4c3612da2b common: Use gosu to replace chpst and add sudo abilities
From:

  https://github.com/tianon/gosu
2017-04-22 23:35:12 -04:00
89ef580768 common: Bump Ninja to 1.7.2 2017-04-15 11:45:18 -04:00
be603d62cf common: Bump CMake to v3.8.0 2017-04-15 11:44:57 -04:00
c25807acda dockcross: Do not leave dangling container on update-script
Addesses #103
2017-01-25 11:01:48 -05:00
2511a92d17 dockcross: Check if "/proc/version" exists and fix error on MacOSX. Fixes #94
This commit will avoid the following error from being reported
on MacOSX:

```
docker run --rm dockcross/linux-armv7 > ./dockcross-linux-armv7
chmod +x ./dockcross-linux-armv7
./dockcross-linux-armv7 bash -c '$CC test/C/hello.c -o hello_arm'
grep: /proc/version: No such file or directory
grep: /proc/version: No such file or directory
```

Reported-by: Chris Warth <cswarth@gmail.com>
2016-12-05 01:32:14 -05:00
c0fe1e2313 dockcross: Ensure deletion error are ignored
This commit follows up on 2e71db2 (dockcross: Ignore deletion error
when running in unprivileged LXC container) by hiding the message
only when (a) the command output matches the expected error message
and (b) is executed on CircleCI.

Doing so will avoid adding "noise" to log of service like CircleCI
that are effectively running docker in unprivileged LXC container.

See #50
2016-11-28 19:50:42 -05:00