Skip to content

Commit

Permalink
Merge remote-tracking branch 'gitlab.toppoint/release-candidate'
Browse files Browse the repository at this point in the history
  • Loading branch information
rubo77 committed Jul 24, 2019
2 parents 2e3f70f + a5e6b66 commit 77e1e00
Show file tree
Hide file tree
Showing 10 changed files with 92 additions and 37 deletions.
10 changes: 5 additions & 5 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ variables:
GIT_SSL_CAPATH: /etc/ssl/certs/
CONTAINER_IMAGE: $CI_REGISTRY_IMAGE/build
GLUON_GIT: https://github.com/freifunk-gluon/gluon.git
GLUON_BRANCH: v2018.1.x
GLUON_BRANCH: v2018.2.x
BROKEN: BROKEN=1

cache:
Expand Down Expand Up @@ -40,17 +40,17 @@ build:
- export FORCE_UNSAFE_CONFIGURE=1
# former clone step
- ./.gitlab-ci/update-git.sh | tee -a debug.log
- ./.gitlab-ci/build.sh -c update -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all) $BROKEN" | tee -a debug.log
- ./.gitlab-ci/build.sh -c update -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all) $BROKEN" 2>&1 | tee -a debug.log
# We should never need this, should we?
- ./.gitlab-ci/build.sh -c clean -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all)" | tee -a debug.log
- ./.gitlab-ci/build.sh -c clean -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all)" 2>&1 | tee -a debug.log
# Apply patches
- ./.gitlab-ci/patch.sh patches gluon
# Build
- ./.gitlab-ci/build.sh -c build -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all) $BROKEN" | tee -a debug.log
- ./.gitlab-ci/build.sh -c build -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all) $BROKEN" 2>&1 | tee -a debug.log
# Revert patches
- ./.gitlab-ci/patch.sh -r patches gluon
# Bring gluon repo to cacheable state
- ./.gitlab-ci/build.sh -c clean -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all) $BROKEN" | tee -a debug.log
- ./.gitlab-ci/build.sh -c clean -b rc -a stable -n $CI_PIPELINE_ID -m "-j $(nproc --all) $BROKEN" 2>&1 | tee -a debug.log
# Sign
- echo $SIGNING_KEY > signing_key
- ./.gitlab-ci/build.sh -c sign -b rc -a stable -s $(pwd)/signing_key
Expand Down
1 change: 1 addition & 0 deletions .gitlab-ci/build-container/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ RUN apt-get update && apt-get install -y \
build-essential \
gawk \
unzip \
time \
libncurses5-dev \
zlib1g-dev \
libssl1.0-dev \
Expand Down
38 changes: 29 additions & 9 deletions .gitlab-ci/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -169,15 +169,27 @@ if [[ -z ${TARGETS+x} ]] ; then
;;
next)
TARGETS="ar71xx-tiny ar71xx-generic"
#TARGETS+=" x86-64 x86-generic x86-64" # (VMs)
#TARGETS+=" ar71xx-nand" # (Netgear WNDR3700, WNDR4300, ZyXEL NBG6716)
#TARGETS+=" x86-64 x86-generic" # (VMs)
#TARGETS+=" ar71xx-nand" # (Netgear WNDR3700, WNDR4300, ZyXEL NBG6716)
#TARGETS+=" mpc85xx-generic" # (tp-link-tl-wdr4900-v1)
TARGETS+=" ramips-mt7620" # (gl-inet mt300 und mt750)
#TARGETS+=" sunxi-cortexa7" # (Banana Pi M1)n
#TARGETS+=" ramips-mt7620" # (gl-inet mt300 und mt750)
#TARGETS+=" sunxi-cortexa7" # (Banana Pi M1)

# BROKEN:
#TARGETS+=" brcm2708-bcm2708 brcm2708-bcm2709 brcm2708-bcm2710" # (raspberry Pi 1, 2 und 3)
#TARGETS+=" ipq40xx" # (FitzBox 4040)
#TARGETS+=" ramips-mt7621" # (D-Link DIR-860L (B1) Ubiquiti EdgeRouter X, ZBT WG3526)
#TARGETS+=" x86-geode"
#TARGETS+=" ramips-rt305x" # BROKEN: (fonera, vocore a5)
#TARGETS+=" ramips-mt76x8" # BROKEN: unstable WiFi (tp-link 841 v13 und archer c50)
#TARGETS+=" ar71xx-mikrotik" # BROKEN: no sysupgrade support (mikrotik-nand)
#TARGETS+=" brcm2708-bcm2710" # BROKEN: Untested (raspberry-pi-3)
#TARGETS+=" ipq806x" # BROKEN: unstable wifi drivers (tp-link-archer-c2600)
#TARGETS+=" mvebu-cortexa9" # BROKEN: No AP+IBSS or 11s support (linksys-wrt1200ac)
;;
*)
# Default to all targets
TARGETS="ar71xx-generic ar71xx-tiny ar71xx-nand brcm2708-bcm2708 brcm2708-bcm2709 ramips-mt7621 sunxi x86-generic x86-geode x86-64 ramips-mt7620 ramips-mt7628 ramips-rt305x"
TARGETS="ar71xx-generic ar71xx-tiny ar71xx-nand brcm2708-bcm2708 brcm2708-bcm2709 ramips-mt7621 x86-generic x86-geode x86-64 ramips-mt7620 ramips-mt76x8 ramips-rt305x sunxi-cortexa7 ipq40xx"
TARGETS+=" mpc85xx-generic" # (tp-link-tl-wdr4900-v1)-
;;
esac
Expand All @@ -198,15 +210,23 @@ if [[ -z "${COMMAND}" ]]; then
exit ${E_ILLEGAL_ARGS}
fi

# Normalize the branch name
BRANCH="${BRANCH#origin/}" # Use the current git branch as autoupdate branch
BRANCH="${BRANCH//\//-}" # Replace all slashes with dashes

# Set release number
if [[ -z "${RELEASE}" ]]; then
RELEASE=$(sed -e "s/BUILD/$BUILD/" "${SITEDIR}/release")
case "${BRANCH}" in
nightly)
RELEASE="${RELEASE}~ngly"
;;
*)
# Do nothing
;;
esac
fi

# Normalize the branch name
BRANCH="${BRANCH#origin/}" # Use the current git branch as autoupdate branch
BRANCH="${BRANCH//\//-}" # Replace all slashes with dashes

# Get the GIT commit description
COMMIT="$(git describe --always --dirty)"

Expand Down
27 changes: 27 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,30 @@
Änderungen mit Firmwareversion 2018.2.2-747 basierend auf Gluon 2018.2.2
========================================================================

Freifunk Kiel spezifische Änderungen:
-------------------------------------

Diese Firmware basiert auf Gluon v2018.2.x (Gluon-Tag v2018.2.2) und wurde
von uns um folgende Modifikation erweitert:

- Fonera Patchset: Patches um Geräte des Herstellers Fonera zu unterstützen (seit v2016.2.3)

Mit dem Sprung von Gluon v2018.1.4 auf v2018.2.2 ist die Liste der unterstützten Geräte weiter gewachsen,
es wurden wieder einige Fehler behoben und der Setup Mode wurde um die Unterstützung einer eingebetteten
Karte erweitert. Weitere Details zu den Updates von Gluon könnt ihr unter folgenden Links erfahren:

- https://gluon.readthedocs.io/en/v2018.2.x/releases/v2018.2.2.html
- https://gluon.readthedocs.io/en/v2018.2.x/releases/v2018.2.1.html
- https://gluon.readthedocs.io/en/v2018.2.x/releases/v2018.2.html

Nach dem Wechsel von batman-adv compat 14 auf batman-adv compat 15 ist der Management-Datenverkehr
auf das Vierfache angewachsen. Das entsprach so nicht unseren Erwartungen. Das Mesh-Netzwerk organisiert
mit diesem Datenverkehr seine Struktur und ein leichter Anstieg des Datenverkehrs war durch die in batman-adv compat 15
verwendete Struktur zur Unterstützung zukünfigter Feature-Erweiterungen (TVLV) zu erwarten gewesen. In Zusammenarbeit mit
den batman-adv Entwicklern haben wir den Datenverkehr analysiert: daraufhin konnte ein Bug identifiziert und behoben
werden.


Änderungen mit Firmwareversion 2018.1.4-667 basierend auf Gluon 2018.1.x (c3eaef9)
==================================================================================

Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Firmware Site Config for Freifunk Kiel
--------------------------------------

The Freifunk firmware is based on gluon.
The Freifunk firmware is based on gluon

You can always find
the latest gluon documentation at:
Expand Down Expand Up @@ -55,6 +55,8 @@ You can validate your changes to this repository by calling the validate_site.sh

These Kieler Freifunk firmwares have been released (for details see [CHANGELOG](CHANGELOG.md) ):

- 2018.2.2-747
- Based on Gluon tag 2018.2.2 +1 patch
- 2018.1.4
- Based on Gluon tag 2018.1.4 +1 commit (2018.1.x) +1 patch
- 2018.1.1
Expand Down
10 changes: 3 additions & 7 deletions make-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ set -e

# if version is unset, will use the default version from site.mk
#VERSION=${3:-"2018.1.3~rc$(date '+%y%m%d%H%M')"}
VERSION=${3:-"2018.1.4"}
VERSION=${3:-"2018.2.1"}
# branch must be set to either rc, nightly or stable
BRANCH=${2:-"stable"}
# must point to valid ecdsa signing key created by ecdsakeygen, relative to Gluon base directory
Expand Down Expand Up @@ -53,10 +53,6 @@ if [ "$(whoami)" == "root" ]; then
exit
fi

if [ -d ../openwrt/ ]; then
echo openwrt was checked out, this will break, if you build v2018.1.x now
fi

echo "############## starting build process #################" >> build.log
date >> build.log
echo "if you want to start over empty the folder ../output/"
Expand All @@ -74,10 +70,10 @@ WRT1200AC="mvebu" # Linksys WRT1200AC BROKEN: No AP+IBSS+mesh support
ONLY_11S="ramips-rt305x ramips-mt7621" # BROKEN only

ONLY_LEDE="ar71xx-tiny" # Support for for 841 on lede, needs less packages, so the 4MB will suffice!
ONLY_LEDE+=" x86-geode ipq806x ramips-mt7628"
ONLY_LEDE+=" x86-geode ipq806x ramips-mt76x8"
NOT_LEDE="x86-kvm_guest" # The x86-kvm_guest target has been dropped from LEDE; x86-64 should be used

BANANAPI="sunxi" # BROKEN: Untested, no sysupgrade support
BANANAPI="sunxi-cortexa7" # BROKEN: Untested, no sysupgrade support
MICROTIK="ar71xx-mikrotik" # BROKEN: no sysupgrade support

RASPBPI="brcm2708-bcm2708 brcm2708-bcm2709"
Expand Down
2 changes: 1 addition & 1 deletion release
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2018.1.4-BUILD
2018.2.2-BUILD
20 changes: 13 additions & 7 deletions site.conf
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
domain_seed = 'd6c58c17e655c52c12e9d8ad1b546a264124dd33dd8a00a39ee528778c2b1c47',

opkg = {
lede = 'http://opkg.services.ffki/%n/%v/%S/packages',
openwrt = 'http://opkg.services.ffki/openwrt/snapshots/packages/%A',
extra = {
gluon = 'http://opkg.services.ffki/modules/gluon-%GS-%GR/%S',
},
Expand All @@ -34,6 +34,16 @@
-- Show/hide the altitude field
geo_location = {
show_altitude = true,
-- for gluon-config-mode-geo-location-osm
osm = {
center = {
lat = 54.326,
lon = 10.130,
},
zoom = 12,
-- the default is https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.2.0
-- openlayers_url = 'https://mirror in kiel?',
},
},
-- define if the contact field is obligatory (optional)
-- disabled in 2017.1.8
Expand All @@ -49,7 +59,6 @@
ddhcpd = {
enabled = true,
range = "10.116.160.0/19",
broadcast = "10.116.255.255"
},

-- Wireless configuration for 2.4 GHz interfaces.
Expand Down Expand Up @@ -229,7 +238,6 @@

branches = {
-- stable releases are only rolled out selectively after a lot of testing in the rc branch
-- the key "stable" has to be noted as BRANCH in the manifest called stable.manifest
stable = {
name = 'stable',
mirrors = {
Expand All @@ -255,7 +263,6 @@
},

-- nightly builds are rolled out automatically whenever a commit is pushed into the nightly branch
-- the key "nightly" has to be noted as BRANCH in the manifest called nightly.manifest
nightly = {
name = 'nightly',
mirrors = {
Expand Down Expand Up @@ -306,10 +313,9 @@
'cb0141d79e131854eb05d6c9ce5cc237baa462e288b7fcb0eadbd92da8f34b3f', -- Buildbot Dois, AutoDeploy
},
},

-- release candidate for the next stable
-- rc builds are rolled out automatically whenever a commit is pushed into the release-candidate branch
-- the key "rc" has to be noted as BRANCH in the manifest called rc.manifest
-- this contains only tested versions and is not rolled out automatically
rc = {
name = 'stable',
mirrors = {
Expand Down
12 changes: 7 additions & 5 deletions site.mk
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

# Always call `make` from the command line with the desired release version!
# otherwise this is generated:
#DEFAULT_GLUON_RELEASE := 2018.1
DEFAULT_GLUON_RELEASE := 2018.1.4~rc$(shell date '+%y%m%d')
#DEFAULT_GLUON_RELEASE := 2018.2
DEFAULT_GLUON_RELEASE := 2018.2.1~rc$(shell date '+%y%m%d')

# Allow overriding the release number from the command line
GLUON_RELEASE ?= $(DEFAULT_GLUON_RELEASE)
Expand All @@ -23,10 +23,10 @@ GLUON_WLAN_MESH ?= 11s

GLUON_LANGS ?= en de

# for feature packs see https://github.com/freifunk-gluon/gluon/blob/v2018.1.x/package/features
# for feature packs see https://github.com/freifunk-gluon/gluon/blob/v2018.2.x/package/features
GLUON_FEATURES := \
config-mode-geo-location-osm \
web-private-wifi \
ebtables-limit-arp \
ebtables-filter-multicast \
ebtables-filter-ra-dhcp \
mesh-batman-adv-15 \
Expand Down Expand Up @@ -152,7 +152,9 @@ USB_PACKAGES_STORAGE += \

# extra packages for fat clients
FAT_PACKAGES := \
tcpdump
tcpdump \
gre \
wireguard

# add addition network drivers and usb stuff only to targets where disk space does not matter
ifeq ($(GLUON_TARGET),$(filter $(GLUON_TARGET),x86-generic x86-64))
Expand Down
5 changes: 3 additions & 2 deletions tests/validate_site.sh
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash
#!/usr/bin/env bash
set -uo pipefail

# validate_site.sh checks if the site.conf is valid json
GLUON_REPO="https://github.com/freifunk-gluon/gluon"
GLUON_BRANCH='v2018.1.x'
GLUON_BRANCH='v2018.2.x'
GLUON_PACKAGES_REPO="https://github.com/freifunk-gluon/packages"
GLUON_PACKAGES_BRANCH='master'

Expand Down Expand Up @@ -92,6 +92,7 @@ echo "####### validating GLUON_SITE_PACKAGES from $P/site.mk ..."
sed '0,/^GLUON_LANGS/d' "$P/site.mk" | sed '/GLUON_TARGET/,$d' | egrep -v '(#|G|iwinfo|iptables|haveged|vim|socat|tar|mesh-batman-adv-1[45]|web-advanced|web-wizard)'> "$testpath"/site.mk.sh
sed -i 's/\s\\$//g;/^$/d' "$testpath"/site.mk.sh
sed -i 's/gluon-mesh-batman-adv-1[45]/gluon-mesh-batman-adv/g' "$testpath"/site.mk.sh
sed -i 's/gluon-config-mode-geo-location-with-map/gluon-config-mode-geo-location/g' $testpath/site.mk.sh
cat "$testpath"/site.mk.sh |
while read packet; do
if [ "$packet" != "" ]; then
Expand Down

0 comments on commit 77e1e00

Please sign in to comment.