working on R build automation

This commit is contained in:
Charlton, Scott R 2022-03-26 11:50:02 -07:00
parent 42cd779af8
commit 07351449c0
3 changed files with 19 additions and 31 deletions

View File

@ -107,14 +107,8 @@ jobs:
- name: versioning
run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
- name: make directories
run: mkdir -p R/phreeqc/R && mkdir -p R/phreeqc/src/phreeqcpp && mkdir -p R/phreeqc/data
- name: check
run: cd R/phreeqc && Rscript -e 'devtools::check()'
- name: build
run: cd R/phreeqc && Rscript -e 'devtools::build()'
run: cd R && make VERSION=${{ needs.init.outputs.VER }} RELEASE_DATE=${{ needs.init.outputs.DATE }} check_built
- uses: actions/upload-artifact@v2
with:

View File

@ -6,6 +6,8 @@
# └── src IDEST
# └── phreeqcpp DEST
#
# see https://r-pkgs.org/
#
CP=cp -f
TOPDIR=phreeqc
@ -19,10 +21,9 @@ DATADIR=phreeqc/data
EXDIR=../phreeqc3-examples
MAN=phreeqc/man
SVN_URL := http://internalbrr.cr.usgs.gov/svn_GW
RELEASE ?= $(shell svn info $(SVN_URL) | egrep "Revision:" | cut -b 10- | ( read one two ; echo $$one ) )
RELEASE_DATE ?= $(shell date "+%Y-%m-%d")
VERSION ?= 1.0
# ?= set only if not already set
RELEASE_DATE ?= $(shell date --rfc-3339=date)
VERSION ?= $(shell curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/next_ver.sh | sh)
DBS = \
Amm.ascii \
@ -292,7 +293,7 @@ $(DATADIR)/examples.rda : $(EXS) build-examples.R
document : $(MAN)/phreeqc-package.Rd
$(MAN)/phreeqc-package.Rd : $(TOPDIR)/R/phreeqc.R $(TOPDIR)/DESCRIPTION $(TOPDIR)/NAMESPACE
$(MAN)/phreeqc-package.Rd : $(TOPDIR)/R/phreeqc.R $(TOPDIR)/DESCRIPTION $(TOPDIR)/NAMESPACE $(PSRC) $(XSRC) $(DATA)
rm -f $(RDFILES)
Rscript -e 'devtools::document("phreeqc")'
@ -825,8 +826,6 @@ $(INST)/ex2 : ../phreeqc3-examples/ex2
check : all
R CMD check --as-cran phreeqc
#check_built : phreeqc_$(VERSION).tar.gz
check_built : phreeqc_$(VERSION).tar.gz
Rscript -e "devtools::check_built(path=\"phreeqc_$(VERSION).tar.gz\")"
@ -860,15 +859,6 @@ $(TOPDIR)/DESCRIPTION : DESCRIPTION.in DESCRIPTION-$(VERSION).TIMESTAMP
DESCRIPTION-$(VERSION).TIMESTAMP :
touch DESCRIPTION-$(VERSION).TIMESTAMP
# export_sed :
# sed \
# -e 's/@VERSION@/$(VERSION)/g' \
# < DESCRIPTION.in > $(TOPDIR)/DESCRIPTION
# sed \
# -e 's/@VERSION@/$(VERSION)/g' \
# -e 's/@RELEASE_DATE@/$(RELEASE_DATE)/g' \
# < phreeqc.R.in > $(TOPDIR)/R/phreeqc.R
# build : all
# R CMD build --resave-data phreeqc
@ -889,5 +879,14 @@ $(IDEST):
$(DEST):
mkdir $(DEST)
# Force directory creation everytime make is executed
# see https://www.cmcrossroads.com/article/making-directories-gnu-make
$(shell mkdir -p $(TOPDIR)/R)
$(shell mkdir -p $(TOPDIR)/src/phreeqcpp)
$(shell mkdir -p $(TOPDIR)/data)
clean :
rm -f $(PSRC) $(XSRC) $(DEST)/*.o $(IDEST)/*.o $(DEST)/*.so

View File

@ -1,5 +1,7 @@
#!/bin/sh
# see https://r-pkgs.org/
#
# set DATE
#
@ -9,13 +11,6 @@ fi
DATE=$(date -d $DATE --rfc-3339=date)
export DATE
#
# create directories
#
mkdir -p R/phreeqc/R
mkdir -p R/phreeqc/src/phreeqcpp
mkdir -p R/phreeqc/data
#
# set VER
#
@ -51,4 +46,4 @@ export REL
# sed files
/bin/sh jenkins-dist.sh -v ${VER} -r ${REL} -d ${DATE} -pr ${TAG}
cd R
make VERSION=${VER} RELEASE_DATE=${DATE} check_built
make VERSION=${VER} RELEASE_DATE=${DATE} check