-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Canvas test failures #91 fixed workflows fixed dockerfile for binder * Fix unknown entity warnings (#90) * fixed package info * fix for #92 #93 and #94 added new workflow for releasetools * use yarn instead of npm * workaround for yarn caches on subprojects: from actions/setup-node#488 (comment) --------- Co-authored-by: Manuel Martins <[email protected]> Co-authored-by: Jerry James <[email protected]>
- Loading branch information
1 parent
68eb7f9
commit ce2639f
Showing
46 changed files
with
490 additions
and
18,671 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
name: NPM_PYPI | ||
|
||
# Trigger the workflow on push or pull request | ||
on: | ||
push: | ||
tags: | ||
- v* | ||
|
||
jobs: | ||
publish_js_python_packages: | ||
name: Build and Publish plugins | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
node-version: [ 19.x ] | ||
|
||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.10' | ||
- uses: actions/cache@v3 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{ runner.os }}-pip | ||
- run: pip install jupyterlab build | ||
- name: Use Node.js ${{ matrix.node-version }} | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: ${{ matrix.node-version }} | ||
registry-url: 'https://registry.npmjs.org' | ||
- name: Get yarn cache directory path | ||
id: yarn-cache-dir-path | ||
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT | ||
shell: bash | ||
working-directory: js | ||
- name: Restore yarn cache | ||
uses: actions/cache@v3 | ||
with: | ||
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
key: yarn-cache-folder-${{ hashFiles('**/yarn.lock', '.yarnrc.yml') }} | ||
restore-keys: | | ||
yarn-cache-folder- | ||
- run: yarn install --frozen-lockfile | ||
working-directory: js | ||
- run: yarn run build:prod | ||
working-directory: js | ||
- name: Publish Browser extension | ||
run: | | ||
npm config set '//registry.npmjs.org/:_authToken' "${NPM_TOKEN}" | ||
npm publish --no-workspaces | ||
working-directory: js/packages/francy-extension-browser | ||
env: | ||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | ||
- run: python -m build --wheel --sdist | ||
working-directory: js/packages/francy-extension-jupyterlab | ||
- name: Publish Jupyterlab extension PyPI | ||
uses: pypa/gh-action-pypi-publish@release/v1 | ||
with: | ||
password: ${{ secrets.PYPI_API_TOKEN }} | ||
packages_dir: js/packages/francy-extension-jupyterlab/dist |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
name: RELEASE | ||
|
||
# Trigger the workflow on push or pull request | ||
on: | ||
push: | ||
branches: | ||
- master | ||
|
||
# the `concurrency` settings ensure that not too many CI jobs run in parallel | ||
concurrency: | ||
# group by workflow and ref; the last slightly strange component ensures that for pull | ||
# requests, we limit to 1 concurrent job, but for the master branch we don't | ||
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.run_number }} | ||
# Cancel intermediate builds, but only if it is a pull request build. | ||
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }} | ||
|
||
jobs: | ||
gap_release_tools: | ||
name: Build and Publish manuals | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Configure ZMQ repos | ||
run: | | ||
sudo touch /etc/apt/sources.list.d/opensuse.list && | ||
echo "deb https://download.opensuse.org/repositories/network:/messaging:/zeromq:/release-stable/Debian_9.0/ ./" | sudo tee -a /etc/apt/sources.list.d/opensuse.list | ||
wget https://download.opensuse.org/repositories/network:/messaging:/zeromq:/release-stable/Debian_9.0/Release.key -O- | sudo apt-key add | ||
- name: Install ZMQ | ||
run: | | ||
sudo apt update && | ||
sudo apt install libzmq3-dev -y | ||
- uses: gap-actions/setup-gap@v2 | ||
with: | ||
GAP_PKGS_TO_BUILD: "datastructures uuid json io crypting zeromqinterface jupyterkernel" | ||
GAPBRANCH: master | ||
- name: Use Node.js ${{ matrix.node-version }} | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: ${{ matrix.node-version }} | ||
registry-url: 'https://registry.npmjs.org' | ||
- name: Get yarn cache directory path | ||
id: yarn-cache-dir-path | ||
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT | ||
shell: bash | ||
working-directory: js | ||
- name: Restore yarn cache | ||
uses: actions/cache@v3 | ||
with: | ||
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
key: yarn-cache-folder-${{ hashFiles('**/yarn.lock', '.yarnrc.yml') }} | ||
restore-keys: | | ||
yarn-cache-folder- | ||
- run: yarn install --frozen-lockfile | ||
working-directory: js | ||
- run: yarn run docs | ||
working-directory: js | ||
- name: GAPTools Release | ||
run: | | ||
# Clone Release tools | ||
git clone --depth=2 -b master https://github.com/gap-system/ReleaseTools $HOME/ReleaseTools | ||
# Add a new remote pointing to the GitHubPagesForGAP repository | ||
git remote add gh-gap https://github.com/gap-system/GitHubPagesForGAP | ||
git fetch gh-gap | ||
# Create a fresh gh-pages branch from the new remote | ||
git branch gh-pages gh-gap/gh-pages --no-track | ||
# Create a new worktree and change into it | ||
git worktree add gh-pages gh-pages | ||
# Copy JavaScript documentation | ||
cp -rf doc/js gh-pages/doc/ | ||
# Configure git | ||
git config user.name "GitHub Actions Bot" | ||
git config user.email "<>" | ||
git config github.user "GitHub Actions Bot" | ||
git config github.token "${{ secrets.GITHUB_TOKEN }}" | ||
# Run Release Script | ||
GAP="$HOME/gap/bin/gap.sh" $HOME/ReleaseTools/release-gap-package --push |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -89,4 +89,6 @@ gh-pages/ | |
|
||
**/build_log.json | ||
|
||
**/docs/* | ||
**/docs/* | ||
|
||
**/labextension/ |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,29 @@ | ||
FROM ubuntu:22.10 | ||
FROM jupyter/minimal-notebook:latest | ||
|
||
MAINTAINER Manuel Martins <[email protected]> | ||
|
||
USER root | ||
|
||
ARG DEBIAN_FRONTEND="noninteractive" | ||
ARG WGET="wget -N --no-check-certificate --tries=5 --waitretry=5 --retry-connrefused" | ||
|
||
RUN apt update && apt -qq install -y git curl wget python3-pip inkscape pandoc texlive-xetex libgmp-dev libreadline-dev graphviz \ | ||
zlib1g-dev libzmq3-dev gcc g++ make autoconf && useradd -s /bin/bash -d /home/gap/ -m -G sudo gap && \ | ||
git clone --depth=2 -b master https://github.com/gap-system/gap.git /home/gap/master && cd /home/gap/master && \ | ||
./autogen.sh && ./configure && make -j4 V=1 && ln -s /home/gap/master/bin/gap.sh /usr/local/sbin/gap && \ | ||
make bootstrap-pkg-minimal DOWNLOAD="$WGET" WGET="$WGET" && \ | ||
cd /home/gap/master/pkg && rm -rf /home/gap/master/pkg/francy && \ | ||
git clone https://github.com/gap-packages/JupyterKernel && \ | ||
zlib1g-dev libzmq3-dev gcc g++ make autoconf && \ | ||
git clone --depth=2 -b master https://github.com/gap-system/gap.git /opt/master && cd /opt/master && \ | ||
./autogen.sh && ./configure && make -j4 V=1 && \ | ||
make bootstrap-pkg-full DOWNLOAD="$WGET" WGET="$WGET" && \ | ||
cd /opt/master/pkg && rm -rf /opt/master/pkg/francy && \ | ||
git clone https://github.com/gap-packages/FrancyMonoids && \ | ||
git clone https://github.com/gap-packages/francy && \ | ||
git clone https://github.com/mcmartins/subgroup-lattice && \ | ||
for pkg in 'io profilling json uuid crypting zeromqinterface jupyterkernel'; do ../bin/BuildPackages.sh --strict $pkg*; done && \ | ||
rm -rf /home/gap/master/packages-required.tar.gz && chown -R gap:gap /home/gap/master/ && \ | ||
rm -rf /opt/master/packages.tar.gz && chown -R jovyan: /opt/master/ && \ | ||
cd /opt/master/pkg/jupyterkernel && pip install . && \ | ||
ln -s /opt/master/pkg/francy/notebooks /home/jovyan/notebooks && \ | ||
ln -s /opt/master/bin/gap.sh /usr/local/sbin/gap && \ | ||
apt purge git gcc g++ make autoconf curl wget -y | ||
|
||
USER gap | ||
|
||
ENV PATH="${PATH}:/home/gap/.local/bin" | ||
USER jovyan | ||
|
||
# jupyter lab extension installation | ||
RUN pip install jupyterlab jupyterlab-francy | ||
|
||
WORKDIR /home/gap/master/pkg/francy/notebooks | ||
|
||
CMD jupyter lab --port=8080 | ||
RUN pip install --no-cache-dir jupyterlab jupyterlab-francy && rm -rf /home/jovyan/.jupyter/* |
Oops, something went wrong.