on master help sign in
Remove TravisCI and AppVeyor configuration files
c8e394fsharkdp
.travis.ymldeleted−106
@@ -1,106 +0,0 @@
1−language: rust
2−
3−matrix:
4− include:
5− # Stable channel.
6− - os: linux
7− rust: stable
8− env: TARGET=x86_64-unknown-linux-gnu
9− - os: linux
10− rust: stable
11− env:
12− - TARGET=x86_64-unknown-linux-musl
13− - CC_x86_64_unknown_linux_musl=/usr/bin/musl-gcc
14− - os: linux
15− rust: stable
16− env: TARGET=i686-unknown-linux-gnu
17− - os: osx
18− rust: stable
19− env: TARGET=x86_64-apple-darwin
20− - os: linux
21− rust: stable
22− env:
23− - TARGET=arm-unknown-linux-gnueabihf
24− - CC_arm_unknown_linux_gnueabihf=/usr/bin/arm-linux-gnueabihf-gcc-4.8
25− - CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc-4.8
26− - os: linux
27− rust: stable
28− env:
29− - TARGET=aarch64-unknown-linux-gnu
30− - CC_aarch64-unknown-linux-gnu=/usr/bin/aarch64-linux-gnu-gcc-4.8
31− - CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc-4.8
32−
33− # Minimum Rust supported channel.
34− - os: linux
35− rust: 1.40.0
36− env: TARGET=x86_64-unknown-linux-gnu
37− - os: linux
38− rust: 1.40.0
39− env:
40− - TARGET=x86_64-unknown-linux-musl
41− - CC_x86_64_unknown_linux_musl=/usr/bin/musl-gcc
42− - os: osx
43− rust: 1.40.0
44− env: TARGET=x86_64-apple-darwin
45−
46− # Disable nightly for now
47− # # Code formatting check
48− # - os: linux
49− # rust: nightly
50− # # skip the global install step
51− # install:
52− # - cargo install --debug --force rustfmt-nightly
53− # script: cargo fmt -- --check
54−
55−sudo: required
56−
57−before_install:
58− - ci/before_install.bash
59−
60−env:
61− global:
62− # Default target on travis-ci.
63− # Used as conditional check in the install stage
64− - HOST=x86_64-unknown-linux-gnu
65− # Used on the deployment script
66− - PROJECT_NAME=bat
67−
68−install:
69− # prevent target re-add error from rustup
70− - if [[ $TRAVIS_OS_NAME = linux && $HOST != $TARGET ]]; then rustup target add $TARGET; fi
71−
72−script:
73− - ci/script.bash
74−
75−before_deploy:
76− - bash ci/before_deploy.bash
77−
78−deploy:
79− provider: releases
80− # NOTE updating the `api_key.secure`
81− # - go to: https://github.com/settings/tokens/new
82− # - generate new token using `public_repo` scope
83− # - encrypt it using: `travis encrypt API_KEY_HERE`
84− # - paste the output below
85− api_key:
86− secure: "GZL8nYk+/MZGEqejpP0UMMGVmwUEdxiF9CflFIGccu+/tznDyHnHOpyJmbH3M5IKWIxa7xFgqOE8pHuD4oQXt4mzyJGB0KMKKEFLW7ckbTYKya5bw0heKznaqGnS0Yz+vpfqYR25eiPFYCz7mDsGsCzH5QZqt3cdn9MDQGu1D0IaxPjuBNH3T9kBblR0ifBd3Diy0JYhiVcMSI3V1rkel18F1yBHO2GQ95hkWxVgjANQnefq5+zdzbx4ki539ewYENShA8N0w6ULJVY9LmWRWJIp90ggOD3JCH6Nz/fBpYBqwfABO6Dr7Csw7IRm7pM4IVkFZS1taiDYFX9thxZh3UTmI4YYtSTPxH9NGV47kxPipbf4vAXFwW+1VcHKMpBzz+5IVsHnk1Pfx9/GZsXbqXM3PUWCStec36Xtqh5vQapDKEg9khkEs4b1X7/E73gvpRuQl9gbnyufSVWgDsXIWqM+0aDbqQz1FpLmVxz6eij0cB9vR+8kbNoe/CEPHPO9ZllvAHseukOeHPzSBd8rILORXaaGmQausXz2wWgSsffUSYz4705P8joI0zFCfmkHjL+kA1ZUx5SxLCc1ID7CFFZChhAxHoPL7xc21snswwr8QeheERdwvuzKNaerBGZEw8dmMMx98YkjftIj65DDySr2mRZuufBQeQpmMhFyIT4="
87− # for uploading multiple files
88− file_glob: true
89− # NOTE explanation on each env variable
90− # - PROJECT_NAME: name of the project, set on the `env.global` above
91− # - TRAVIS_TAG: tag name that the build is being deployed for, usually the version number
92− # - TARGET: target triple of the build
93− file:
94− - $PROJECT_NAME-$TRAVIS_TAG-$TARGET.*
95− - $PROJECT_NAME*.deb
96− # don't delete artifacts from previous stage
97− skip_cleanup: true
98− on:
99− # deploy only if we push a tag
100− tags: true
101− # deploy only on stable channel that has TARGET env variable sets
102− condition: $TRAVIS_RUST_VERSION = stable && $TARGET != ""
103−
104−notifications:
105− email:
106− on_success: never
appveyor.ymldeleted−49
@@ -1,49 +0,0 @@
1−environment:
2− global:
3− TARGET: x86_64-pc-windows-msvc
4− RUST_VERSION: stable
5− CRATE_NAME: bat
6− CARGO_HOME: "c:\\cargo"
7− RUSTUP_HOME: "c:\\rustup"
8−
9−install:
10− - appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
11− - rustup-init.exe -y --default-host %TARGET% --profile minimal
12− - set PATH=%PATH%;C:\cargo\bin
13− - rustc -Vv
14− - cargo -V
15−
16−build: false
17−test_script:
18− - cargo test --target %TARGET% --verbose
19− - cargo run --target %TARGET% -- src/bin/bat/main.rs README.md --paging=never
20−
21−before_deploy:
22− # Generate artifacts for release
23− - cargo build --bins --release --verbose
24− - ps: ci\before_deploy.ps1
25−
26−deploy:
27− description: 'Automatically deployed release'
28− artifact: /.*\.zip/
29− # Here's how:
30− # - Go to 'https://github.com/settings/tokens/new' and generate a Token with only the
31− # `public_repo` scope enabled
32− # - Then go to 'https://ci.appveyor.com/tools/encrypt' and enter the newly generated token.
33− # - Enter the "encrypted value" below
34− auth_token:
35− secure: oO4/J+hcFXgXcEqEc8gzlQNqLG0IxU78s4EyH+uczGdsyWajb3yipxPR6nXUvmoj
36− provider: GitHub
37− on:
38− RUST_VERSION: stable
39− appveyor_repo_tag: true
40−
41−cache:
42− - C:\Users\appveyor\.cargo\registry
43− - target
44−
45−notifications:
46− - provider: Email
47− on_build_success: false
48− on_build_failure: false
49− on_build_status_changed: false
ci/.gitattributesdeleted−1
@@ -1 +0,0 @@
1−* linguist-vendored
ci/before_deploy.bashdeleted−188
@@ -1,188 +0,0 @@
1−#!/usr/bin/env bash
2−# Building and packaging for release
3−set -ex
4−
5−# Ensure environment variables exist.
6−if [[ -z "$PROJECT_NAME" ]]; then
7− export PROJECT_NAME="bat"
8−fi
9−
10−build() {
11− cargo build --bins --target "$TARGET" --release --verbose
12−}
13−
14−pack() {
15− local tempdir
16− local out_dir
17− local package_name
18− local gcc_prefix
19−
20− tempdir=$(mktemp -d 2>/dev/null || mktemp -d -t tmp)
21− out_dir=$(pwd)
22− package_name="$PROJECT_NAME-$TRAVIS_TAG-$TARGET"
23−
24− if [[ $TARGET == "arm-unknown-linux-gnueabihf" ]]; then
25− gcc_prefix="arm-linux-gnueabihf-"
26− elif [[ $TARGET == "aarch64-unknown-linux-gnu" ]]; then
27− gcc_prefix="aarch64-linux-gnu-"
28− else
29− gcc_prefix=""
30− fi
31−
32− # create a "staging" directory
33− mkdir "$tempdir/$package_name"
34− mkdir "$tempdir/$package_name/autocomplete"
35−
36− # copying the main binary
37− cp "target/$TARGET/release/$PROJECT_NAME" "$tempdir/$package_name/"
38− "${gcc_prefix}"strip "$tempdir/$package_name/$PROJECT_NAME"
39−
40− # manpage, readme and license
41− cp target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/assets/manual/bat.1 "$tempdir/$package_name/$PROJECT_NAME.1"
42− cp README.md "$tempdir/$package_name"
43− cp LICENSE-MIT "$tempdir/$package_name"
44− cp LICENSE-APACHE "$tempdir/$package_name"
45−
46− # various autocomplete
47− # TODO: disabled for now, see issue #372
48− # cp target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/"$PROJECT_NAME".bash "$tempdir/$package_name/autocomplete/${PROJECT_NAME}.bash-completion"
49− # cp target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/"$PROJECT_NAME".fish "$tempdir/$package_name/autocomplete"
50− cp target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/assets/completions/bat.fish "$tempdir/$package_name/autocomplete/$PROJECT_NAME.fish"
51− # cp target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/_"$PROJECT_NAME" "$tempdir/$package_name/autocomplete"
52−
53− # archiving
54− pushd "$tempdir"
55− tar czf "$out_dir/$package_name.tar.gz" "$package_name"/*
56− popd
57− rm -r "$tempdir"
58−}
59−
60−make_deb() {
61− local tempdir
62− local architecture
63− local version
64− local dpkgname
65− local conflictname
66− local gcc_prefix
67− local homepage
68− local maintainer
69−
70− homepage="https://github.com/sharkdp/bat"
71− maintainer="David Peter <mail@david-peter.de>"
72−
73− case $TARGET in
74− x86_64*)
75− architecture=amd64
76− gcc_prefix=""
77− ;;
78− i686*)
79− architecture=i386
80− gcc_prefix=""
81− ;;
82− aarch64*)
83− architecture=arm64
84− gcc_prefix="aarch64-linux-gnu-"
85− ;;
86− arm*hf)
87− architecture=armhf
88− gcc_prefix="arm-linux-gnueabihf-"
89− ;;
90− *)
91− echo "make_deb: skipping target '${TARGET}'" >&2
92− return 0
93− ;;
94− esac
95− version=${TRAVIS_TAG#v}
96− if [[ $TARGET = *musl* ]]; then
97− dpkgname=$PROJECT_NAME-musl
98− conflictname=$PROJECT_NAME
99− else
100− dpkgname=$PROJECT_NAME
101− conflictname=$PROJECT_NAME-musl
102− fi
103−
104− tempdir=$(mktemp -d 2>/dev/null || mktemp -d -t tmp)
105−
106− # copy the main binary
107− install -Dm755 "target/$TARGET/release/$PROJECT_NAME" "$tempdir/usr/bin/$PROJECT_NAME"
108− "${gcc_prefix}"strip "$tempdir/usr/bin/$PROJECT_NAME"
109−
110− # manpage
111− install -Dm644 target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/assets/manual/bat.1 "$tempdir/usr/share/man/man1/$PROJECT_NAME.1"
112− gzip --best "$tempdir/usr/share/man/man1/$PROJECT_NAME.1"
113−
114− # completions
115− install -Dm644 target/"$TARGET"/release/build/"$PROJECT_NAME"-*/out/assets/completions/bat.fish "$tempdir/usr/share/fish/vendor_completions.d/$PROJECT_NAME.fish"
116−
117− # readme and license
118− install -Dm644 README.md "$tempdir/usr/share/doc/$PROJECT_NAME/README.md"
119− install -Dm644 LICENSE-MIT "$tempdir/usr/share/doc/$PROJECT_NAME/LICENSE-MIT"
120− install -Dm644 LICENSE-APACHE "$tempdir/usr/share/doc/$PROJECT_NAME/LICENSE-APACHE"
121− cat > "$tempdir/usr/share/doc/$PROJECT_NAME/copyright" <<EOF
122−Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
123−Upstream-Name: $PROJECT_NAME
124−Source: $homepage
125−
126−Files: *
127−Copyright: $maintainer
128−License: Apache-2.0 or MIT
129−
130−License: Apache-2.0
131− On Debian systems, the complete text of the Apache-2.0 can be found in the
132− file /usr/share/common-licenses/Apache-2.0.
133−
134−License: MIT
135− Permission is hereby granted, free of charge, to any
136− person obtaining a copy of this software and associated
137− documentation files (the "Software"), to deal in the
138− Software without restriction, including without
139− limitation the rights to use, copy, modify, merge,
140− publish, distribute, sublicense, and/or sell copies of
141− the Software, and to permit persons to whom the Software
142− is furnished to do so, subject to the following
143− conditions:
144− .
145− The above copyright notice and this permission notice
146− shall be included in all copies or substantial portions
147− of the Software.
148− .
149− THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
150− ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
151− TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
152− PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
153− SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
154− CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
155− OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
156− IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
157− DEALINGS IN THE SOFTWARE.
158−EOF
159−
160− # Control file
161− mkdir "$tempdir/DEBIAN"
162− cat > "$tempdir/DEBIAN/control" <<EOF
163−Package: $dpkgname
164−Version: $version
165−Section: utils
166−Priority: optional
167−Maintainer: $maintainer
168−Homepage: $homepage
169−Architecture: $architecture
170−Provides: $PROJECT_NAME
171−Conflicts: $conflictname
172−Description: A cat(1) clone with wings.
173− A cat(1) clone with syntax highlighting and Git integration.
174−EOF
175−
176− fakeroot dpkg-deb --build "$tempdir" "${dpkgname}_${version}_${architecture}.deb"
177−}
178−
179−
180−main() {
181− build
182− pack
183− if [[ $TARGET = *linux* ]]; then
184− make_deb
185− fi
186−}
187−
188−main
ci/before_deploy.ps1deleted−28
@@ -1,28 +0,0 @@
1−# This script takes care of packaging the build artifacts that will go in the
2−# release zipfile
3−
4−$SRC_DIR = $PWD.Path
5−$STAGE = [System.Guid]::NewGuid().ToString()
6−
7−Set-Location $ENV:Temp
8−New-Item -Type Directory -Name $STAGE
9−Set-Location $STAGE
10−
11−$ZIP = "$SRC_DIR\$($Env:CRATE_NAME)-$($Env:APPVEYOR_REPO_TAG_NAME)-$($Env:TARGET).zip"
12−
13−Copy-Item "$SRC_DIR\target\release\bat.exe" '.\'
14−# TODO: disabled for now, see issue #372
15−# Copy-Item $SRC_DIR\target\release\build\bat-*\out\_bat.ps1 '.\'
16−
17−# readme and license
18−Copy-Item $SRC_DIR\README.md '.\'
19−Copy-Item $SRC_DIR\LICENSE-MIT '.\'
20−Copy-Item $SRC_DIR\LICENSE-APACHE '.\'
21−
22−7z a "$ZIP" *
23−
24−Push-AppveyorArtifact "$ZIP"
25−
26−Set-Location ..
27−Remove-Item $STAGE -Force -Recurse
28−Set-Location $SRC_DIR
ci/before_install.bashdeleted−38
@@ -1,38 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -ex
4−
5−if [ "$TRAVIS_OS_NAME" != linux ]; then
6− exit 0
7−fi
8−
9−sudo apt-get update
10−
11−# needed for musl targets
12−sudo apt-get install -y musl-tools
13−
14−# needed to build deb packages
15−sudo apt-get install -y fakeroot
16−
17−# needed for i686 linux gnu target
18−if [[ $TARGET == i686-unknown-linux-gnu ]]; then
19− sudo apt-get install -y gcc-multilib
20−fi
21−
22−# needed for cross-compiling for arm
23−if [[ $TARGET == arm-unknown-linux-gnueabihf ]]; then
24− sudo apt-get install -y \
25− gcc-4.8-arm-linux-gnueabihf \
26− binutils-arm-linux-gnueabihf \
27− libc6-armhf-cross \
28− libc6-dev-armhf-cross
29−fi
30−
31−# needed for cross-compiling for arm64
32−if [[ $TARGET == aarch64-unknown-linux-gnu ]]; then
33− sudo apt-get install -y \
34− gcc-4.8-aarch64-linux-gnu \
35− binutils-aarch64-linux-gnu \
36− gcc-aarch64-linux-gnu \
37− libc6-dev-arm64-cross
38−fi
ci/script.bashdeleted−20
@@ -1,20 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -ex
4−
5−# Incorporate TARGET env var to the build and test process
6−cargo build --target "$TARGET" --verbose
7−
8−# We cannot run arm executables on linux
9−if [[ $TARGET != arm-unknown-linux-gnueabihf ]] && [[ $TARGET != aarch64-unknown-linux-gnu ]]; then
10− cargo test --target "$TARGET" --verbose
11−
12− # Run 'bat' on its own source code and the README
13− cargo run --target "$TARGET" -- src/bin/bat/main.rs README.md --paging=never
14−fi
15−
16−# Check bat-as-a-library, which has a smaller set of dependencies
17−cargo check --target "$TARGET" --verbose --lib --no-default-features --features regex-onig
18−cargo check --target "$TARGET" --verbose --lib --no-default-features --features regex-onig,git
19−cargo check --target "$TARGET" --verbose --lib --no-default-features --features regex-onig,paging
20−cargo check --target "$TARGET" --verbose --lib --no-default-features --features regex-onig,git,paging