|
| 1 | +#!/bin/tcsh |
| 2 | +#======================================================================= |
| 3 | +#+ |
| 4 | +# NAME: |
| 5 | +# gen_version |
| 6 | +# |
| 7 | +# PURPOSE: |
| 8 | +# Find out the most recent commit ID, and write a small tex file |
| 9 | +# for input into the white paper. |
| 10 | +# |
| 11 | +# COMMENTS: |
| 12 | +# |
| 13 | +# INPUTS: |
| 14 | +# None |
| 15 | +# |
| 16 | +# OPTIONAL INPUTS: |
| 17 | +# -h --help Print this header |
| 18 | +# -v --version Manual version number |
| 19 | +# |
| 20 | +# OUTPUTS: |
| 21 | +# version.tex Tex file for input into white paper |
| 22 | +# |
| 23 | +# EXAMPLES: |
| 24 | +# |
| 25 | +# BUGS: |
| 26 | +# |
| 27 | +#- |
| 28 | +# ====================================================================== |
| 29 | + |
| 30 | +set help = 0 |
| 31 | +set version = 0.0 |
| 32 | + |
| 33 | +while ( $#argv > 0 ) |
| 34 | + switch ($argv[1]) |
| 35 | + case -h: |
| 36 | + shift argv |
| 37 | + set help = 1 |
| 38 | + breaksw |
| 39 | + case --{help}: |
| 40 | + shift argv |
| 41 | + set help = 1 |
| 42 | + breaksw |
| 43 | + case -v: |
| 44 | + shift argv |
| 45 | + set version = $argv[1] |
| 46 | + shift argv |
| 47 | + breaksw |
| 48 | + case --{version}: |
| 49 | + shift argv |
| 50 | + set version = $argv[1] |
| 51 | + shift argv |
| 52 | + breaksw |
| 53 | + endsw |
| 54 | +end |
| 55 | + |
| 56 | +if ($help) then |
| 57 | + more $0 |
| 58 | + goto FINISH |
| 59 | +endif |
| 60 | + |
| 61 | +# # Get most recent tag name: |
| 62 | +# set version = `git describe --tags | cut -d'-' -f1` |
| 63 | +# set version_url = "https://github.com/LSSTScienceCollaborations/ObservingStrategy/releases/tag/${version}" |
| 64 | +# Abandoning this - the problem is that when we make a new release, |
| 65 | +# it won't update the tags until *after we've made it, at which |
| 66 | +# point the PDF has already become part of the release. I think we have |
| 67 | +# to set the Version number by hand. |
| 68 | + |
| 69 | +# Get most recent commit ID and its date: |
| 70 | +set SHA = `git show | head -1 | cut -d' ' -f2` |
| 71 | +set short_SHA = `echo $SHA | cut -c1-7` |
| 72 | +set date = `git log --date=rfc | head -3 | grep Date | cut -d':' -f2-` |
| 73 | + |
| 74 | +# Get URL of latest commit: |
| 75 | +set commit_url = "https://github.com/LSSTScienceCollaborations/ObservingStrategy/commit/${SHA}?diff=split" |
| 76 | + |
| 77 | +# Append commit ID to version number: |
| 78 | +set version = "${version}.${short_SHA}" |
| 79 | + |
| 80 | +# Write tex file for input into paper: |
| 81 | +set texfile = "thisversion.tex" |
| 82 | +set template = "version.tex" |
| 83 | +\rm -f $texfile ; touch $texfile |
| 84 | + |
| 85 | +cat $template | \ |
| 86 | + sed s%XX%"${version}"%g | \ |
| 87 | + sed s%URL%"${commit_url}"%g | \ |
| 88 | + sed s%SHA%"${short_SHA}"%g | \ |
| 89 | + sed s%DATE%"${date}"%g > $texfile |
| 90 | + |
| 91 | +cat $texfile |
| 92 | + |
| 93 | +# ====================================================================== |
| 94 | +FINISH: |
| 95 | +# ====================================================================== |
0 commit comments