Closed keenanlang closed 6 years ago
Also completes Pull Request #5
I like this, it looks very clean. There is a downside that the git clone grabs much more content than the wget tarball.gz. Some will want the capability to change the branch of a module while others will not want to use all that space in the .git subdirectories.
Nevertheless, Linux testing with these commands:
cd /test/directory
wget https://raw.githubusercontent.com/EPICS-synApps/support/assemble-git/assemble_synApps.sh
bash ./assemble_synApps.sh
Getting a problem here:
--2017-04-28 16:04:55-- (try: 20) http://www.aps.anl.gov/epics/download/modules/allenBradley-2.3.tar.gz
Connecting to www.aps.anl.gov (www.aps.anl.gov)|164.54.22.38|:80... connected.
HTTP request sent, awaiting response... No data received.
Retrying.
...
Giving up.
tar: allenBradley-2.3.tar.gz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
mv: cannot stat 'allenBradley-2.3': No such file or directory
There is a downside that the git clone grabs much more content than the wget tarball.gz. Some will want the capability to change the branch of a module while others will not want to use all that space in the .git subdirectories.
If using a new enough version of git, clone has the --branch option which, when combined with --depth=1, gives only the same files you would get in the tarball. I'll put that as the default behavior and provide a switch for those using older versions.
Getting a problem here:
The part that's failing for you hasn't changed from the original assemble_synApps.csh. Is the original file still working?
The download URL for the Allen-Bradley was confirmed working today. Must have been a temporary condition. Will test new version of script.
Script works with no errors on LinuxMint
Switched to using a function call that greatly simplifies pulling repos from git.
Also changed the script to pull the repos directly rather than having to download a tar, untar it, and delete the tarball. Uses the git:// protocol which allows anyone to checkout a clone of the repository without having to have a github account or ssh keys setup. The git:// protocol also doesn't allow for pushes, which helps restrict accidental changes to the master repository.