~mil/sxmo-image-builder

ref: b9b2b580e994827789ceb832eec6941fd3136291 sxmo-image-builder/.build.yml -rw-r--r-- 2.3 KiB
b9b2b580Miles Alan Roll 0.1.8 Image Release 1 year, 2 months ago
                                                                                
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
image: alpine/3.12
packages: [coreutils, procps, py3-requests, xz]

environment:
  #DEVICE: pinebookpro
  DEVICE: pinephone
  VERSION: 0.1.8

secrets:
  - bcf1e9cf-4494-40f4-a725-87088afbf3b5
  - 1645c273-d954-436f-8898-11fc8cad4601

sources:
  - "https://gitlab.com/postmarketOS/pmaports.git/"
  - "https://gitlab.com/postmarketOS/pmbootstrap.git/"

tasks:
  - setup_device: |
      sed -i s/DEVICE/$DEVICE/ sxmo-image-builder/pmbootstrap.cfg

  - setup_binfmt: |
      sudo modprobe binfmt_misc
      sudo mount -t binfmt_misc none /proc/sys/fs/binfmt_misc
    
  - setup_pmbootstrap: |
      mkdir -p ~/.config && cp sxmo-image-builder/pmbootstrap.cfg ~/.config/
      cp sxmo-image-builder/m\@milesalan.com-5e6e8e01.rsa.pub pmbootstrap/pmb/data/keys/
      yes "" | ./pmbootstrap/pmbootstrap.py  --aports=$PWD/pmaports -q init   

  - build_image: |
      ./pmbootstrap/pmbootstrap.py chroot -b aarch64 ls
      ./pmbootstrap/pmbootstrap.py -mp=http://postmarketos1.brixit.nl/postmarketos/ -mp=http://sxmo.lrdu.org/alpine_repository/ update --arch aarch64 
      yes "mo" | ./pmbootstrap/pmbootstrap.py --details-to-stdout -mp=http://postmarketos1.brixit.nl/postmarketos/ -mp=http://sxmo.lrdu.org/alpine_repository/ install
      ./pmbootstrap/pmbootstrap.py export images
      sudo losetup /dev/loop0 images/pine64-$DEVICE.img
      sudo mkdir bootpart
      sudo mount -o loop /dev/loop0p1 bootpart
      #sudo sed -i 's/pmos_boot=/PMOS_FORCE_PARTITION_RESIZE pmos_boot=/' bootpart/boot.scr
      sudo umount bootpart

  - compress_image: |
      du -h $(readlink images/pine64-$DEVICE.img)
      date
      sh -c 'xz -c $(readlink images/pine64-$DEVICE.img) > /home/build/compressed.img.xz'
      du -h /home/build/compressed.img.xz
      date
      
  - upload_image: |
      export TIME=$(date +%Y%m%d)
      ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null $(cat ~/.user_at_server) "mkdir -p /home/public/images.lrdu.org/$DEVICE/"
      scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null /home/build/compressed.img.xz $(cat ~/.user_at_server):/home/public/images.lrdu.org/$DEVICE/sxmo_$DEVICE-sd.$VERSION-$TIME.img.xz

  - set_htaccess: |
      scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null sxmo-image-builder/.htaccess $(cat ~/.user_at_server):/home/public/images.lrdu.org/.htaccess