aboutsummaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: b9d5950c87d54cae8c4b16113bf7ddc0f69ee372 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
variables:
  GIT_SUBMODULE_STRATEGY: recursive

stages:
  - build

debian_10:
  stage: build
  image: debian:10
  script:
    - "sudo apt install libopencv-dev libpugixml-dev libpangocairo-1.0-0 libpango1.0-dev libcairo2-dev clang make python3 git python3-wheel curl python3-pip python3-venv"
    - "curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh"
    - "source $HOME/.cargo/env"
    - "rustup install stable"
    - "rustup default stable"
    - "cargo install usvg"
    - "pip3 install --user git+https://git.jaseg.de/pcb-tools-extension.git"
    - "pip3 install --user gerbolyze --no-binary gerbolyze"
    - "gerbolyze --help"

ubuntu_2004:
  stage: build
  image: ubuntu:20.04
  script:
    - "sudo apt install libopencv-dev libpugixml-dev libpangocairo-1.0-0 libpango1.0-dev libcairo2-dev clang make python3 git python3-wheel curl python3-pip python3-venv cargo"
    - "cargo install usvg"
    - "pip3 install --user git+https://git.jaseg.de/pcb-tools-extension.git"
    - "pip3 install --user gerbolyze --no-binary gerbolyze"
    - "gerbolyze --help"

fedora_33:
  stage: build
  image: fedora:33
  script:
    - "sudo dnf install python3 make clang opencv-devel pugixml-devel pango-devel cairo-devel rust cargo"
    - "cargo install usvg"
    - "pip3 install --user git+https://git.jaseg.de/pcb-tools-extension.git"
    - "pip3 install --user gerbolyze --no-binary gerbolyze"
    - "gerbolyze --help"

archlinux:
  stage: build
  image: archlinux:latest
  script:
    - "pacman -Syyu --needed --noconfirm --noprogressbar base-devel pugixml opencv pango cairo git python python-pip make clang rustup cargo pkgconf python-numpy python-slugify python-lxml python-click"
    - "rustup install stable"
    - "rustup default stable"
    - "cargo install usvg"
    - "pip install --user git+https://git.jaseg.de/pcb-tools-extension.git"
    - "python setup.py install --user"
    - "export PATH=$HOME/.local/bin:$PATH"
    - "gerbolyze --help"

source:
  stage: build
  image: archlinux:latest
  script:
    - "git clone --recurse-submodules https://git.jaseg.de/gerbolyze.git"
    - "cd gerbolyze"
    - "pip3 install --user git+https://git.jaseg.de/pcb-tools-extension.git"
    - "python3 -m venv"
    - "source venv/bin/activate"
    - "python3 setup.py install"
    - "gerbolyze --help"