Merge pull request #1900 from nicost/acqj #232
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: apidoc | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
jobs: | |
mmdevice-doxygen: | |
name: MMDevice Doxygen | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
path: micro-manager | |
submodules: true | |
- name: Install Doxygen | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install doxygen | |
- name: Build HTML | |
run: | | |
cd micro-manager | |
mkdir -p doxygen/out/MMDevice | |
doxygen doxygen/MMDevice | |
tar cf ../html.tar -C doxygen/out/MMDevice/html . | |
- uses: actions/checkout@v2 | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
with: | |
repository: micro-manager/apidoc | |
ssh-key: ${{ secrets.SSH_KEY_DEPLOY_TO_APIDOC }} | |
fetch-depth: 0 | |
path: apidoc | |
- name: Publish HTML | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
run: | | |
cd apidoc | |
./prepare_pages_branch.sh MMDevice/latest | |
tar xf ../html.tar | |
git add . | |
./publish_pages_as_bot.sh MMDevice/latest | |
mmcore-doxygen: | |
name: MMCore Doxygen | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
path: micro-manager | |
submodules: true | |
- name: Install Doxygen | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install doxygen | |
- name: Build HTML | |
run: | | |
cd micro-manager | |
mkdir -p doxygen/out/MMCore | |
doxygen doxygen/MMCore | |
tar cf ../html.tar -C doxygen/out/MMCore/html . | |
- uses: actions/checkout@v2 | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
with: | |
repository: micro-manager/apidoc | |
ssh-key: ${{ secrets.SSH_KEY_DEPLOY_TO_APIDOC }} | |
fetch-depth: 0 | |
path: apidoc | |
- name: Publish HTML | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
run: | | |
cd apidoc | |
./prepare_pages_branch.sh MMCore/latest | |
tar xf ../html.tar | |
git add . | |
./publish_pages_as_bot.sh MMCore/latest | |
mmcorej-javadoc: | |
name: mmcorej Javadoc | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
path: micro-manager | |
submodules: true | |
- name: Install tools and dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install build-essential autoconf automake libtool \ | |
autoconf-archive pkg-config doxygen | |
sudo apt-get -y install libpcre3-dev # For SWIG-3 | |
- name: Cache SWIG-3 | |
id: cache-swig-3 | |
uses: actions/cache@v2 | |
with: | |
path: swig-3.0.12 | |
key: mmstudio-javadoc-swig-3.0.12 | |
- name: Build SWIG-3 | |
if: steps.cache-swig-3.outputs.cache-hit != 'true' | |
run: | | |
curl -LO http://prdownloads.sourceforge.net/swig/swig-3.0.12.tar.gz | |
tar xzf swig-3.0.12.tar.gz | |
cd swig-3.0.12 | |
./configure | |
make -j3 | |
- name: Install SWIG-3 | |
run: | | |
cd swig-3.0.12 | |
sudo make install | |
- name: Configure and run SWIG | |
run: | | |
cd micro-manager | |
./autogen.sh | |
./configure JAVA_HOME=$JAVA_HOME_8_X64 | |
make -C mmCoreAndDevices/MMCoreJ_wrap MMCoreJ_wrap.h | |
- name: Build Javadoc | |
run: | | |
cd micro-manager | |
make dox | |
cd swig-doc-converter | |
PATH="$JAVA_HOME_8_X64/bin:$PATH" ./convert | |
tar cf ../../html.tar -C javadoc . | |
- uses: actions/checkout@v2 | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
with: | |
repository: micro-manager/apidoc | |
ssh-key: ${{ secrets.SSH_KEY_DEPLOY_TO_APIDOC }} | |
fetch-depth: 0 | |
path: apidoc | |
- name: Publish Javadoc | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
run: | | |
cd apidoc | |
./prepare_pages_branch.sh mmcorej/latest | |
tar xf ../html.tar | |
git add . | |
./publish_pages_as_bot.sh mmcorej/latest | |
mmstudio-javadoc: | |
name: mmstudio Javadoc | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
path: micro-manager | |
submodules: true | |
- name: Install tools and dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install build-essential autoconf automake libtool \ | |
autoconf-archive pkg-config | |
sudo apt-get -y install libboost-all-dev | |
sudo apt-get -y install libpcre3-dev # For SWIG-3 | |
- name: Cache SWIG-3 | |
id: cache-swig-3 | |
uses: actions/cache@v2 | |
with: | |
path: swig-3.0.12 | |
key: mmstudio-javadoc-swig-3.0.12 | |
- name: Build SWIG-3 | |
if: steps.cache-swig-3.outputs.cache-hit != 'true' | |
run: | | |
curl -LO http://prdownloads.sourceforge.net/swig/swig-3.0.12.tar.gz | |
tar xzf swig-3.0.12.tar.gz | |
cd swig-3.0.12 | |
./configure | |
make -j3 | |
- name: Install SWIG-3 | |
run: | | |
cd swig-3.0.12 | |
sudo make install | |
- name: Cache 3rdpartypublic classext | |
id: cache-3ppce | |
uses: actions/cache@v2 | |
with: | |
path: 3rdpartypublic | |
key: mmstudio-javadoc-3ppce-${{ hashFiles('micro-manager/buildscripts/ivy.xml') }} | |
- name: Check out 3rdpartypublic classext | |
if: steps.cache-3ppce.outputs.cache-hit != 'true' | |
run: | | |
# TEMPORARY HACK to accept specific expired TLS certificate | |
mkdir -p ~/.subversion/auth/svn.ssl.server | |
cp micro-manager/.github/accept-expired-valelab4-svn \ | |
~/.subversion/auth/svn.ssl.server/7abd63f9a2ebe9418dc77976036ea792 | |
# END TEMPORARY HACK | |
mkdir 3rdpartypublic | |
svn co https://valelab4.ucsf.edu/svn/3rdpartypublic/classext \ | |
3rdpartypublic/classext | |
- name: Cache Ivy cache | |
uses: actions/cache@v2 | |
with: | |
path: ~/.ivy2 | |
key: mmstudio-javadoc-ivy-${{ hashFiles('micro-manager/buildscripts/ivy*.xml') }} | |
- name: Build parts of micro-manager | |
run: | | |
cd micro-manager | |
./autogen.sh | |
./configure JAVA_HOME=$JAVA_HOME_8_X64 | |
make fetchdeps | |
make -C buildscripts/AntExtensions | |
make -C mmCoreAndDevices/MMDevice -j3 | |
make -C mmCoreAndDevices/MMCore -j3 | |
make -C mmCoreAndDevices/MMCoreJ_wrap | |
make -C mmstudio | |
- name: Build Javadoc | |
run: | | |
cd micro-manager/mmstudio | |
PATH="$JAVA_HOME_8_X64/bin:$PATH" make javadoc | |
tar cf ../../html.tar -C doc . | |
- uses: actions/checkout@v2 | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
with: | |
repository: micro-manager/apidoc | |
ssh-key: ${{ secrets.SSH_KEY_DEPLOY_TO_APIDOC }} | |
fetch-depth: 0 | |
path: apidoc | |
- name: Publish Javadoc | |
if: github.repository == 'micro-manager/micro-manager' && github.ref == 'refs/heads/main' | |
run: | | |
cd apidoc | |
./prepare_pages_branch.sh mmstudio/latest | |
tar xf ../html.tar | |
git add . | |
./publish_pages_as_bot.sh mmstudio/latest |