Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v2.0.0 images #34

Merged
merged 274 commits into from
May 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
274 commits
Select commit Hold shift + click to select a range
c79cf13
Dont build plant until errors are resolved
sujen1412 Mar 15, 2022
c676016
Update R image dockerfile
sujen1412 Mar 16, 2022
f051022
Try parallel builds
sujen1412 Mar 16, 2022
de4cad7
Correct jupyterlab_dir path
sujen1412 Mar 16, 2022
2f35f91
Correct typo
sujen1412 Mar 16, 2022
6d4aa58
Install more base libraries
sujen1412 Apr 15, 2022
d087153
Separate conda install mamba step
sujen1412 Apr 15, 2022
80d25d6
Change ownership after cleanup
sujen1412 Apr 15, 2022
9179cbf
Make mamba as requirement from base image .
sujen1412 Apr 16, 2022
fbb156d
Use vanilla as base image for jlab
sujen1412 Apr 19, 2022
9e73982
Add updated gitlab ci file
sujen1412 Apr 19, 2022
a7a180d
Upgrade Jlab to 3.3.4
sujen1412 Apr 19, 2022
314f9f2
move maap-py to root; copy to jupyter img
bsatoriu Apr 19, 2022
1b555c8
Add isce2 base image
sujen1412 Apr 26, 2022
5e42597
try optimization after analyzing with dive
sujen1412 Apr 29, 2022
e0976cb
Significantly improve image sizes
sujen1412 Apr 29, 2022
27cc964
Correct typo in apt-get
sujen1412 Apr 29, 2022
f29d8c1
Add devfile configs
bsatoriu May 12, 2022
a27a003
updated custom jupyter package install
marjo-luc Aug 19, 2022
525df55
Update Dockerfile
marjo-luc Aug 19, 2022
176da27
Update Dockerfile
marjo-luc Aug 19, 2022
ebf942e
Update Dockerfile
marjo-luc Aug 19, 2022
3711ff0
Update Dockerfile
marjo-luc Aug 19, 2022
3724e66
Update Dockerfile
marjo-luc Aug 22, 2022
cf4668f
Update Dockerfile
marjo-luc Aug 22, 2022
048f992
Update Dockerfile
marjo-luc Aug 22, 2022
2c98bf1
Update Dockerfile
marjo-luc Aug 22, 2022
d19c3eb
added new environments file
marjo-luc Aug 22, 2022
dd066a0
Update Dockerfile
marjo-luc Aug 22, 2022
50e71a5
Update docker build to use --no-cache
sujen1412 Aug 23, 2022
7fe6ff2
added umf package
marjo-luc Sep 13, 2022
e5414e8
added maap-libs npm package
marjo-luc Sep 13, 2022
c806487
Update Dockerfile
marjo-luc Sep 14, 2022
98ede1d
Update Dockerfile
marjo-luc Sep 14, 2022
2bc2d41
added uwm package
marjo-luc Sep 16, 2022
4d6abe7
Update Dockerfile
marjo-luc Sep 16, 2022
539d14e
Update Dockerfile
marjo-luc Sep 16, 2022
93c264f
Update Dockerfile
marjo-luc Sep 16, 2022
8f4c8d6
Update Dockerfile
marjo-luc Sep 16, 2022
100c9e6
Update Dockerfile
marjo-luc Sep 16, 2022
9b53cec
Build RSGISLib image
sujen1412 Sep 19, 2022
bc182b3
added kibana visualization jupyter extension
marjo-luc Sep 20, 2022
e6dc0ac
Updated r and added rgedi
gchang Oct 4, 2022
10352c7
Update build-image.sh
gchang Oct 4, 2022
d959c10
Added EDAV and updated server prefix detection
gchang Oct 4, 2022
9efd6b0
Fixed EDAV build-image.sh
gchang Oct 4, 2022
c7bccbd
Changed EDAV to 3100
gchang Oct 4, 2022
a74a119
Removed redundant EDAV icon
gchang Oct 4, 2022
915efd1
QOL updates to workspaces
gchang Oct 4, 2022
0d4e9ae
Added realtime collaboration in Jupyterlab!
gchang Oct 4, 2022
80c41b5
Add devfile-registry
bsatoriu Oct 11, 2022
c81b002
Reorg devfiles for auto-publishing
bsatoriu Oct 11, 2022
28e7327
index.sh fixes
bsatoriu Oct 11, 2022
1601b7e
Devfile refactoring
bsatoriu Oct 11, 2022
e1d3e52
Readme update
bsatoriu Oct 11, 2022
c4e26c0
add self reference to index generator
bsatoriu Oct 11, 2022
1659b20
Update vanilla devfile meta.yml
bsatoriu Oct 13, 2022
7fe680e
Update PLAnT devfile meta.yaml
bsatoriu Oct 13, 2022
608a262
Fixed devfiles to generate random workspace names
gchang Oct 26, 2022
dfd229c
Update Dockerfile
marjo-luc Nov 11, 2022
f1f4b2c
fixes #617 -- updated miniconda image
marjo-luc Nov 14, 2022
1539bdc
Merge pull request #1 from MAAP-Project/bug/617
marjo-luc Nov 14, 2022
3ee44a4
Update Dockerfile
marjo-luc Nov 14, 2022
62996a3
Update environments.json
marjo-luc Nov 28, 2022
bf14eaf
Update environments.json
marjo-luc Nov 28, 2022
c3d8bb5
added maap help jupyter extension to the dockerfile
grallewellyn Dec 15, 2022
1393bee
removed maap help from dockerfile
grallewellyn Dec 15, 2022
5399a17
added maap help jupyter extension back in
grallewellyn Dec 15, 2022
a653a70
added a space to force rebuild of maap help
grallewellyn Dec 15, 2022
d0d1265
removed space to trigger rebuild
grallewellyn Dec 15, 2022
1a895fa
added jupyterlab-tour to the mamba install command
grallewellyn Dec 15, 2022
35c38e9
removed the version from jupyterlab-tour
grallewellyn Dec 16, 2022
0e8c58d
added back version for jupyterlab tour and added in enable and disable
grallewellyn Dec 16, 2022
a177cdc
changed statement to enable default tours
grallewellyn Dec 16, 2022
d9eb320
removed mentions of jupyterlab tour
grallewellyn Dec 16, 2022
4aa1776
added enabling tours lower
grallewellyn Dec 19, 2022
7eafee9
changed jupyterlab tour install to be conda instead of mamba
grallewellyn Dec 19, 2022
997b850
added yes tag to conda install command
grallewellyn Dec 19, 2022
ed3a28a
changed command to pip
grallewellyn Dec 19, 2022
e1d77f2
fixed command
grallewellyn Dec 19, 2022
5ba88a2
converted back to a conda install
grallewellyn Dec 19, 2022
870bf67
disabled the default tours
grallewellyn Dec 19, 2022
1b42c7b
upgraded maap help to version 0.0.5
grallewellyn Dec 20, 2022
8150084
maap help v0.0.6
grallewellyn Dec 20, 2022
ed07627
same v6 of maap help, but ensuring jupyterlab tour version
grallewellyn Dec 20, 2022
b7c8bc9
new v7 of maaphelp and using jupyterlab-tour v3
grallewellyn Dec 20, 2022
ce21779
maap help v0.0.7 and using jlab tour v3.1.1
grallewellyn Dec 20, 2022
e4ad11e
using pip to install another v3.1.1 of jlab tour
grallewellyn Dec 20, 2022
6888475
using pip with jlab tour v3
grallewellyn Dec 20, 2022
f2dfc85
using mamba and jlab tour v3.0.0
grallewellyn Dec 20, 2022
876ec1e
using mamba with jlab tour v3.1.1 and maap help v0.0.10
grallewellyn Dec 21, 2022
adc9699
package.json says v3.1.1 but trying mamba v3.1.4
grallewellyn Dec 21, 2022
d7d916d
using pip install with v3.1.4
grallewellyn Dec 21, 2022
23fa23c
trying v3.1.4 for conda
grallewellyn Dec 21, 2022
bc7bf3b
enabled default tour
grallewellyn Dec 21, 2022
281c4a0
upgraded to version 0.0.12 of maap help
grallewellyn Dec 21, 2022
6181ebc
upgraded version 0.0.13 of maap help
grallewellyn Dec 21, 2022
64d7463
removed jlab tour from package.json and trying with conda
grallewellyn Dec 21, 2022
f3be4ec
Updated entrypoint.sh
gchang Dec 21, 2022
c31bbd0
Merge remote-tracking branch 'origin/dit' into dit
gchang Dec 21, 2022
5bd3246
now using pip to install version 3.1.4
grallewellyn Dec 22, 2022
0037cb6
Merge branch 'dit' of github.com:MAAP-Project/maap-workspaces into dit
grallewellyn Dec 22, 2022
1f6900f
corrected pip install line
grallewellyn Dec 22, 2022
4adae4f
installing with conda with nothing in package.json
grallewellyn Dec 22, 2022
06208d8
using version 0.0.15 with ITourHandler and install with conda
grallewellyn Dec 22, 2022
8dac570
changed to pip install with ITourHandler
grallewellyn Dec 22, 2022
af053ff
changed to mamba install with ITourHandler
grallewellyn Dec 22, 2022
e7faf63
trying the command with _ and install with conda
grallewellyn Dec 22, 2022
9367a1a
added pip install jlab notifications
grallewellyn Dec 22, 2022
c00249d
fixed the conda install command
grallewellyn Dec 22, 2022
29430d5
removed jlab notifications install
grallewellyn Dec 23, 2022
be0ce37
trying ITourHandler and install with conda
grallewellyn Dec 23, 2022
e2d9e5d
upgraded to maap help v18 without ITourHandler
grallewellyn Dec 23, 2022
033e30d
version 19 of maap help with different id
grallewellyn Dec 28, 2022
1dcd01a
enabling jupyterlab tour plugin
grallewellyn Dec 28, 2022
23a95e5
committed maap help version 20 with jlab tour hard coded in
grallewellyn Dec 29, 2022
ca92463
v21 of maap help with less hard coded
grallewellyn Dec 29, 2022
602bc9a
removed conda install of jupyterlab tour
grallewellyn Dec 29, 2022
009387c
version 22 with print statements
grallewellyn Jan 2, 2023
4e84c02
version 23 fixed file browser
grallewellyn Jan 3, 2023
1e7eb95
added launching tour to help menu
grallewellyn Jan 3, 2023
ff8f4d3
using maap help v25 which can create a file
grallewellyn Jan 6, 2023
4198c97
commented out maap help extension
grallewellyn Jan 9, 2023
2af4263
version 26 of maap help now using local storage
grallewellyn Jan 12, 2023
617f6c0
version 27 maap help
grallewellyn Jan 12, 2023
b1a710e
version 28 maaphelp with reduced package.json
grallewellyn Jan 12, 2023
2556990
removed maap help because failed build
grallewellyn Jan 12, 2023
c01f388
commented back in maap help v28
grallewellyn Jan 12, 2023
3ee0e22
reverting back to v27 maaphelp
grallewellyn Jan 12, 2023
4937d6b
version 29 that should be similar to version 27
grallewellyn Jan 12, 2023
2a6d8ee
v30 maap help with one small change
grallewellyn Jan 12, 2023
e2321e7
version 31 of maap help
grallewellyn Jan 12, 2023
dd5110e
v32 of maap help
grallewellyn Jan 12, 2023
b959b93
version 33 of maap help removing jupyterlab tour
grallewellyn Jan 12, 2023
a2c33ff
maap help v34
grallewellyn Jan 12, 2023
1f72e98
version 35 of maap help
grallewellyn Jan 12, 2023
0337993
maaphelp v36
grallewellyn Jan 12, 2023
3ff11aa
changed the jupyterlab build command
grallewellyn Jan 12, 2023
0f1b166
version 37 adding jupyterlab-tour back in
grallewellyn Jan 12, 2023
f02c7a9
v38 of maap help with forget tour button for demo purposes
grallewellyn Jan 18, 2023
361bbba
reverted back to v37 which I know should run
grallewellyn Jan 18, 2023
0882b49
removed maap help from dockerfile
grallewellyn Jan 18, 2023
9d110b8
split up npm install and run build commands
grallewellyn Jan 18, 2023
abeaf9f
pushing another dockerfile that did run successfully before
grallewellyn Jan 18, 2023
29af368
replaces the maap edav esa front repo with my repo
grallewellyn Jan 18, 2023
4ddf7ff
trying to run edav again with old edav repo
grallewellyn Jan 18, 2023
759ca1d
reverted a packages dependent on chokidar back to original versions
grallewellyn Jan 18, 2023
1d646c9
deleted the packagelock in edav and reran
grallewellyn Jan 18, 2023
0ea2d28
rerunning with working maap edav esa front repo
grallewellyn Jan 19, 2023
fdf3c41
combined npm install and build commands again
grallewellyn Jan 19, 2023
63e2a6e
changed the maap help version back to 38
grallewellyn Jan 19, 2023
4316af2
upgraded maap help to version 39
grallewellyn Jan 20, 2023
04b201a
Create LICENSE
marjo-luc Jan 24, 2023
2c0d5b8
version 40 of maaphelp with change to wording of tour
grallewellyn Jan 24, 2023
802806b
Merge branch 'dit' of github.com:MAAP-Project/maap-workspaces into dit
grallewellyn Jan 24, 2023
e5ee096
version 41 with title links opening in new tab
grallewellyn Jan 24, 2023
2e8f484
Added configuration that should allow us to build workspaces that inc…
anilnatha Jan 24, 2023
162a59d
Merge branch 'dit' into updates/add-pangeo-workspace
anilnatha Jan 24, 2023
f66f94f
Added installation of packages back to the pangeo base image and remo…
anilnatha Jan 25, 2023
f9c7bfd
Removed installation of packages from conda-forge that are handled by…
anilnatha Jan 25, 2023
db17927
removed hide-che-sidebar jupyter extension
marjo-luc Jan 26, 2023
5caff94
Updated image reference in dev file for pangeo workspace.
anilnatha Jan 31, 2023
a6686b4
Added ipyleaflet installation to jupyterlab3 Dockerfile.
anilnatha Jan 31, 2023
aed9d8f
Merge pull request #7 from MAAP-Project/features/add-ipyleaflet
bsatoriu Feb 1, 2023
59d8ade
Merge pull request #3 from MAAP-Project/updates/add-pangeo-workspace
bsatoriu Feb 1, 2023
ba76b7c
Added an innocuous change to retrigger the build pipeline to test the…
anilnatha Feb 7, 2023
b2e75c8
Merge pull request #8 from MAAP-Project/features/add-ipyleaflet
bsatoriu Feb 7, 2023
e2d8514
Renamed pangeo top level image folder to "jupyterlab3-build" to set t…
anilnatha Feb 15, 2023
9a61011
Merge pull request #9 from MAAP-Project/features/add-pangeo-workspace
sujen1412 Feb 15, 2023
3c9d24f
Fixed conda-forge install command for ipyleaflet
anilnatha Feb 16, 2023
270d0da
Merge pull request #10 from MAAP-Project/features/add-ipyleaflet
anilnatha Feb 16, 2023
0fb723a
Merge branch 'develop' of github.com:MAAP-Project/maap-workspaces int…
grallewellyn Feb 21, 2023
63187dd
Updated all our workspace devfiles.yaml files to address the renaming…
anilnatha Feb 21, 2023
6ed4402
Merge pull request #4 from MAAP-Project/feature/update-extension-list
marjo-luc Feb 21, 2023
c5bd19f
removed extension
marjo-luc Feb 21, 2023
47dfa58
Merge pull request #13 from MAAP-Project/feature/update-extension-list
marjo-luc Feb 21, 2023
bb9368c
Merge pull request #12 from MAAP-Project/bugs/issue682-fix-devfiles
anilnatha Mar 1, 2023
2d3a713
Added missing comma to list of tags
anilnatha Mar 1, 2023
1dd8c4b
Merge pull request #14 from MAAP-Project/bugs/fix-pangeo-meta-yaml
anilnatha Mar 1, 2023
f97ff29
Removed pinned versions of nodejs and jupyter-packaging to determine …
anilnatha Mar 8, 2023
05e7647
Updated isce2 with latest miniconda and isce2 conda package.
gchang Mar 9, 2023
eda4ed1
Merge pull request #15 from MAAP-Project/features/add-pangeo-workspace
anilnatha Mar 9, 2023
62a4223
Removed commented out lines as noticed in PR comments
gchang Mar 14, 2023
bef0e39
Merge pull request #16 from MAAP-Project/features/update-isce2-workspace
gchang Mar 14, 2023
0f3926f
Update Node JS to solve dependency issue with ISCE2
gchang Mar 15, 2023
c514444
trying to update version of python
grallewellyn Mar 15, 2023
9016e48
Merge branch 'develop' into features/add-pangeo-workspace
anilnatha Mar 15, 2023
0bfa832
Updated the miniconda image version being used to build the pangeo ba…
anilnatha Mar 15, 2023
c1c9559
Added Plant as part of the isce2 workspace
gchang Mar 16, 2023
8a7198e
Merge pull request #19 from MAAP-Project/features/update-isce2-workspace
gchang Mar 16, 2023
482ee34
Merge pull request #17 from MAAP-Project/features/update-node-js
gchang Mar 16, 2023
5a570d9
Merge pull request #18 from MAAP-Project/features/add-pangeo-workspace
anilnatha Mar 16, 2023
e6a13b2
Moving maap-py install to match vanilla
gchang Mar 16, 2023
91955e9
Merge branch 'develop' into features/update-isce2-workspace
gchang Mar 22, 2023
ad5add5
Merge pull request #20 from MAAP-Project/features/update-isce2-workspace
gchang Mar 22, 2023
6b3a814
Merge branch 'develop' into feature/R-Python-upgrade
gchang Mar 22, 2023
d1e5001
Updated R base image
gchang Mar 22, 2023
5272a94
Merge branch 'develop' into features/add-pangeo-workspace
anilnatha Mar 22, 2023
a59439a
Moved location of conda-lock file for pangeo workspace because it coo…
anilnatha Mar 22, 2023
0f3122d
Fixed location where pangeo images can be found in the pangeo devfile.
anilnatha Mar 22, 2023
33dcf42
Force command execution of mamba install using conda lock to determin…
anilnatha Mar 22, 2023
2dc8578
Moved conda-linux-64.lock file location.
anilnatha Mar 22, 2023
a27c5e8
check pwd during build.
anilnatha Mar 22, 2023
d83151f
check pwd before running WORKDIR
anilnatha Mar 23, 2023
d5d53bf
Updated where the conda-lock file is being retrieved for ONBUILD comm…
anilnatha Mar 24, 2023
a9e18a8
Updated location of Pangeo lock file and added onbuild copy command t…
anilnatha Mar 29, 2023
a77bc57
moved conda-lock file.
anilnatha Mar 29, 2023
86cdb60
Added Cache busting for pangeo base image.
anilnatha Mar 29, 2023
241115f
Updated path for onbuild command in pangeo base image.
anilnatha Mar 29, 2023
2813bd3
Merge pull request #22 from MAAP-Project/feature/R-Python-upgrade
grallewellyn Mar 29, 2023
d4c0778
Updated build image script for jupyterlab3-build.
anilnatha Mar 29, 2023
554602c
update miniconda
marjo-luc Mar 29, 2023
59e7896
Fixed improperly tagged image name in jupyterlab3-build build script
anilnatha Mar 29, 2023
7572272
updated jlab and dependencies versions
marjo-luc Mar 30, 2023
e9689e4
updated extension installs
marjo-luc Mar 30, 2023
6ea01bc
cleaned up installs
marjo-luc Mar 31, 2023
52442dd
minor updates
marjo-luc Apr 3, 2023
58b49ab
Merge branch 'develop' into features/add-pangeo-workspace
anilnatha Apr 3, 2023
ff53b53
Removed unused IMAGE_NAME docker arg from jupyterlab3-build dockerfile.
anilnatha Apr 3, 2023
aa9c376
locked package versions
marjo-luc Apr 4, 2023
65f73b9
Added *.code-workspace to gitignore.
anilnatha Apr 12, 2023
fd41ec4
Update CI image build process to allow for custom builds (#23)
sujen1412 Apr 12, 2023
cc52d57
Moved pangeo conda lock to jupyterlab3 folder and modified jupyterlab…
anilnatha Apr 12, 2023
fc8bad9
Merge branch 'develop' into features/add-pangeo-workspace
anilnatha Apr 13, 2023
e10297d
Testing nodejs install via CI.
anilnatha Apr 13, 2023
ebafd7d
update maap help
marjo-luc Apr 14, 2023
1284b1a
Merge pull request #24 from MAAP-Project/feature/update-versions
marjo-luc Apr 14, 2023
618b813
Merge branch 'develop' into features/add-pangeo-workspace
anilnatha Apr 17, 2023
e233455
Updated pangeo builds so that they can be built off of the jupyterlab…
anilnatha Apr 17, 2023
1f5e783
Fixed path to pangeo image in devfile.
anilnatha Apr 17, 2023
80b0352
Removed unneeded build script from jupyterlab3-build folder.
anilnatha Apr 17, 2023
5656707
Updated environment.yml file existence check in jupyterlab3 Dockerfile
anilnatha Apr 17, 2023
f069eb4
Removed unneeded CACHE_BUST variable from base images build script.
anilnatha Apr 17, 2023
d77ee10
Updated how environments yml detection is handled.
anilnatha Apr 17, 2023
bf0eec4
Updated pinned versions needed for pangeo workspace.
anilnatha Apr 17, 2023
d789a37
Disabled announcements toast message plugin.
anilnatha Apr 17, 2023
72eca46
Removed .DS_Store operating system file from being tracked and update…
anilnatha Apr 17, 2023
0c44a8f
Updated channels for shared environment.yml
anilnatha Apr 17, 2023
7b43569
Merge pull request #25 from MAAP-Project/features/add-pangeo-workspace
anilnatha Apr 17, 2023
a0721cd
Merge pull request #26 from MAAP-Project/features/disable-news-toast
anilnatha Apr 17, 2023
b9c1208
Updated description for Pangeo workspace to include the version number.
anilnatha Apr 17, 2023
b5723e3
Further simplified text.
anilnatha Apr 17, 2023
f56e648
Merge pull request #27 from MAAP-Project/features/update-pangeo-devfi…
anilnatha Apr 17, 2023
3d33a56
Updated ISCE2 description to include "PLAnT"
anilnatha Apr 17, 2023
bb16c57
Merge pull request #28 from MAAP-Project/features/update-isce2-descri…
anilnatha Apr 17, 2023
a0a9d4e
Allow custom builds with Parent Child triggered workflows on Gitlab (…
sujen1412 May 3, 2023
cba03ae
Added ISCE3 libraries + Opera RTC (#30)
gchang May 15, 2023
8335d82
Update meta.yaml for isce3 (#31)
gchang May 15, 2023
8ef133f
Update devfile.yaml (#32)
gchang May 17, 2023
ac2dbe8
Remove unused images plant and rsgislib (#33)
sujen1412 May 17, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

.idea/

**/.DS_Store

built_images.txt

base_images/build-image-local.sh

*.code-workspace
192 changes: 192 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,192 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

Copyright (c) 2022 California Institute of Technology (“Caltech”) U.S. Government sponsorship acknowledged,
and United States Government as represented by the Administrator of the National Aeronautics and Space Administration.
All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
28 changes: 28 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,30 @@
# maap-workspaces
Repository dedicated to building maap workspaces.

## CI/CD setup
If using gitlab, create a blank project and copy the gitlab ci file to it.
Set up a webhook from this repository to trigger pipelines builds on the gitlab project.

### CI Variables

`FORCE_REF_BUILD`: variable used to force build a specific branch or commit hash.

`BUILD_ALL_BASE_IMAGES`: Builds all images listed under the [base_images](/base_images) dir.

`BUILD_SPECIFIC_BASE_IMAGES`: Comma separated list of base images to build. Names should match dir names under
[base_images](/base_images) dir


### Working of CI

Use the above variables to control the execution of a CI pipline when manually triggering a pipline.
By default, when the CI receives a webhook, it will get the latest commit on the repo and list the files that have changed.

If files changed match `base_images/*/*` it will trigger a build of those images.
Any other files changed currently does not trigger image builds.

TODO: On files changed under jupyterlab dir, build all images.

## Devfile publication

To be listed in the ADE stack directory, the devfile and its metadata must be included in the [devfiles](/devfiles) directory.
20 changes: 20 additions & 0 deletions base_images/build-image.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!/bin/bash

set -ex
base_image_dir=$(dirname $0)
# Check if on a branch or in a detached HEAD state get commit sha
BRANCH=$(basename $(git symbolic-ref -q --short HEAD || git rev-parse --short HEAD))
DIRS="vanilla r rgedi rsgislib"
if [[ ! -z "$@" ]]; then
DIRS=$@
fi
for dir in ${DIRS}; do
pushd $base_image_dir/$dir
IMAGE_NAME=$(basename $dir)
IMAGE_REF=${CI_REGISTRY_IMAGE}/base_images/${IMAGE_NAME}:${BRANCH}
docker build -t ${IMAGE_REF} --build-arg IMAGE_REF=${IMAGE_REF} -f docker/Dockerfile .
docker push ${IMAGE_REF}
popd
echo "$IMAGE_REF" >> built_images.txt
done

45 changes: 45 additions & 0 deletions base_images/isce2/docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
FROM continuumio/miniconda3:22.11.1
ENV LANG en_US.UTF-8
ENV TZ US/Pacific
ARG DEBIAN_FRONTEND=noninteractive

# install maap-py library
ENV MAAP_CONF='/maap-py/'
RUN git clone --single-branch --branch master https://github.com/MAAP-Project/maap-py.git \
&& cd maap-py \
&& pip install -e .

RUN set -ex \
&& apt-get update \
&& apt-get install -y \
libfftw3-3=3.3.8-2 \
libgdal28=3.2.2+dfsg-2+deb11u2 \
libhdf4-0=4.2.15-3 \
libhdf5-103=1.10.6+repack-4+deb11u1 \
libopencv-core4.5=4.5.1+dfsg-5 \
libopencv-highgui4.5=4.5.1+dfsg-5 \
libopencv-imgproc4.5=4.5.1+dfsg-5 \
python3-gdal=3.2.2+dfsg-2+deb11u2 \
python3-h5py=2.10.0-9 \
python3-numpy=1:1.19.5-1 \
python3-scipy=1.6.0-2 && \
apt-get clean


RUN mkdir /projects
WORKDIR /projects
RUN sed -i -e 's/\/root/\/projects/g' /etc/passwd

RUN conda install -y -c conda-forge mamba=1.3.1

# need to uninstall jupyter_server_terminals as it conflicts with Jupyterlab 3.4.x. Doesn't seem to break anything
# but can get rid of if/when we upgrade jlab
RUN mamba install -y -c conda-forge -c plant plant=0.1.89dev isce2=2.6.2 matplotlib=3.5.1 Cython=0.29.28 \
numba=0.55.1 pygeos=0.14.0 pyproj=3.4.1 rasterio=1.3.6 && \
pip uninstall -y jupyter_server_terminals && \
find /opt/conda/ -follow -type f -name '*.a' -delete && \
find /opt/conda/ -follow -type f -name '*.js.map' -delete && \
/opt/conda/bin/conda clean -afy

ARG IMAGE_REF
ENV DOCKERIMAGE_PATH=${IMAGE_REF}
30 changes: 30 additions & 0 deletions base_images/isce3/docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
FROM continuumio/miniconda3:22.11.1
ENV LANG en_US.UTF-8
ENV TZ US/Pacific
ARG DEBIAN_FRONTEND=noninteractive

# install maap-py library
ENV MAAP_CONF='/maap-py/'
RUN git clone --single-branch --branch master https://github.com/MAAP-Project/maap-py.git \
&& cd maap-py \
&& pip install -e .

RUN set -ex \
&& apt-get update

RUN mkdir /projects
WORKDIR /projects
RUN sed -i -e 's/\/root/\/projects/g' /etc/passwd

RUN conda install -y -c conda-forge mamba=1.4.2

RUN mamba install -y -c conda-forge isce3=0.12.0 xarray=2023.4.2 \
hvplot=0.8.3 fsspec=2023.5.0 scikit-learn=1.2.2 && \
find /opt/conda/ -follow -type f -name '*.a' -delete && \
find /opt/conda/ -follow -type f -name '*.js.map' -delete && \
/opt/conda/bin/conda clean -afy

RUN pip install git+https://github.com/opera-adt/[email protected]

ARG IMAGE_REF
ENV DOCKERIMAGE_PATH=${IMAGE_REF}
24 changes: 24 additions & 0 deletions base_images/pangeo/docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
FROM continuumio/miniconda3:22.11.1
ENV LANG en_US.UTF-8
ENV TZ US/Pacific
ARG DEBIAN_FRONTEND=noninteractive

# install maap-py library
ENV MAAP_CONF='/maap-py/'
RUN git clone --single-branch --branch master https://github.com/MAAP-Project/maap-py.git \
&& cd maap-py \
&& pip install -e .

RUN mkdir /projects
WORKDIR /projects
RUN sed -i -e 's/\/root/\/projects/g' /etc/passwd

RUN conda install -c conda-forge mamba && \
mamba install -c conda-forge -y gdal=3.6.2 matplotlib=3.6.2 Cython=0.29.33 h5py=3.7.0 numba=0.56.4 \
pygeos=0.14 pyproj=3.4.1 rasterio=1.3.4 scipy=1.10.0 \
&& find /opt/conda/ -follow -type f -name '*.a' -delete \
&& find /opt/conda/ -follow -type f -name '*.js.map' -delete \
&& /opt/conda/bin/conda clean -afy

ARG IMAGE_REF
ENV DOCKERIMAGE_PATH=${IMAGE_REF}
29 changes: 29 additions & 0 deletions base_images/r/docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
FROM continuumio/miniconda3:22.11.1
ENV LANG en_US.UTF-8
ENV TZ US/Pacific
ARG DEBIAN_FRONTEND=noninteractive

# install maap-py library
ENV MAAP_CONF='/maap-py/'
RUN git clone --single-branch --branch master https://github.com/MAAP-Project/maap-py.git \
&& cd maap-py \
&& pip install -e .

RUN set -ex \
&& apt-get update

RUN mkdir /projects
WORKDIR /projects
RUN sed -i -e 's/\/root/\/projects/g' /etc/passwd

RUN conda install -y -c conda-forge mamba=1.3.1

RUN mamba install -y -c conda-forge r==4.2 r-rgdal==1.5_32 r-sf==1.0_7 r-irkernel==1.3.2 r-gridExtra==2.3 \
r-tidyverse==2.0.0 r-randomForest==4.7_1.1 r-raster==3.6_20 r-data.table==1.14.8 r-rlist==0.4.6.2 \
r-gdalutils==2.0.3.2 r-stringr==1.5.0 && \
find /opt/conda/ -follow -type f -name '*.a' -delete && \
find /opt/conda/ -follow -type f -name '*.js.map' -delete && \
/opt/conda/bin/conda clean -afy

ARG IMAGE_REF
ENV DOCKERIMAGE_PATH=${IMAGE_REF}
Loading