mirror of
				https://github.com/open5gs/open5gs.git
				synced 2025-11-03 21:43:25 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			92 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/sh
 | 
						|
 | 
						|
for arg in "$@"; do
 | 
						|
  if [ "$arg" = "-h" ]; then
 | 
						|
    echo "Usage: ./build/osc-upload.sh [PROJECT]"
 | 
						|
    echo ""
 | 
						|
    echo "  PROJECT: snapshot(=Default), release"
 | 
						|
    echo ""
 | 
						|
    echo "  This script is used to upload a source package to OBS(OpenSUSE Build Service)."
 | 
						|
    echo ""
 | 
						|
    echo "  This script must be called from the base directory of the repository, and"
 | 
						|
    echo "  requires utilites from these packages: git-buildpackage osc git"
 | 
						|
    echo ""
 | 
						|
    exit
 | 
						|
  fi
 | 
						|
done
 | 
						|
 | 
						|
if [ ! -x /usr/bin/dpkg-parsechangelog ]; then
 | 
						|
  echo "Missing the dpkg-parsechangelog utility from the dpkg-dev package"
 | 
						|
  exit 1
 | 
						|
fi
 | 
						|
 | 
						|
if [ ! -f debian/changelog ]; then
 | 
						|
  echo "This script must be called from the base directory of the package"
 | 
						|
  exit 1
 | 
						|
fi
 | 
						|
 | 
						|
if [ ! -d .git ]; then
 | 
						|
  echo "This script only works from within a repository"
 | 
						|
  exit 1
 | 
						|
fi
 | 
						|
 | 
						|
if [ ! -x /usr/bin/gbp ]; then
 | 
						|
  echo "Missing git-buildpackage"
 | 
						|
  exit 1
 | 
						|
fi
 | 
						|
 | 
						|
PACKAGE=$(dpkg-parsechangelog | sed -n 's/^Source: //p')
 | 
						|
DT="$(date +%Y%m%d)+git$(git rev-parse --short HEAD)"
 | 
						|
TOP=$(pwd)
 | 
						|
 | 
						|
OGS_REPO=$TOP/build/obs-repo
 | 
						|
PROJECT=home:acetcom:open5gs:${1-snapshot}
 | 
						|
OBS_DIR=$OGS_REPO/$PROJECT/$PACKAGE
 | 
						|
 | 
						|
prepare() {
 | 
						|
  if [ -d $OBS_DIR ]; then
 | 
						|
    (cd $OBS_DIR && osc up)
 | 
						|
  else
 | 
						|
    mkdir -p $OGS_REPO
 | 
						|
    (cd $OGS_REPO && osc co $PROJECT $PACKAGE)
 | 
						|
  fi
 | 
						|
}
 | 
						|
 | 
						|
DEB_SRC=$TOP/build/deb-src
 | 
						|
DEB_DIR=$DEB_SRC/$PACKAGE
 | 
						|
 | 
						|
build_package() {
 | 
						|
  if [ ! -d $DEB_DIR ]; then
 | 
						|
    mkdir -p $DEB_DIR
 | 
						|
  fi
 | 
						|
 | 
						|
  ./build/git-version-gen . > .tarball-version 2>/dev/null
 | 
						|
  gbp buildpackage -S --no-sign -d \
 | 
						|
    --git-ignore-branch --git-ignore-new "--git-export-dir=$DEB_DIR" \
 | 
						|
    --git-postexport='cp $GBP_GIT_DIR/../.tarball-version $GBP_TMP_DIR/'
 | 
						|
  rm -f .tarball-version
 | 
						|
 | 
						|
  cd $OBS_DIR
 | 
						|
 | 
						|
  file=$(cd "$DEB_DIR/" ; ls ./*.dsc)
 | 
						|
  echo $file
 | 
						|
  if [ -e "$file" ] ; then
 | 
						|
    osc rm ./* || true
 | 
						|
  fi
 | 
						|
 | 
						|
  mv "$DEB_DIR/"*.dsc .
 | 
						|
  mv "$DEB_DIR/"*.tar* .
 | 
						|
  osc add ./*
 | 
						|
 | 
						|
  rm "$DEB_DIR/"*
 | 
						|
  rmdir "$DEB_DIR/"
 | 
						|
  rmdir "$DEB_SRC/"
 | 
						|
 | 
						|
  cd $TOP
 | 
						|
}
 | 
						|
 | 
						|
prepare
 | 
						|
build_package
 | 
						|
 | 
						|
(cd $OBS_DIR && osc ci -m "Snapshot versions of $DT")
 |