From fc59d9fb755125d25492f7ac838c8cc681d85b5a Mon Sep 17 00:00:00 2001 From: Vanessasaurus <814322+vsoch@users.noreply.github.com> Date: Fri, 8 Jul 2022 06:07:38 -0600 Subject: [PATCH] adding support for alias files (#557) * adding support for alias files an alias file is a yaml file "lookup" alongside a container.yaml that can be used to provide tag specific commands for a particular container tag * updating alias-files -> overrides Signed-off-by: vsoch Co-authored-by: Matthieu Muffato --- .github/workflows/test-container.yml | 7 +- CHANGELOG.md | 1 + docs/getting_started/developer-guide.rst | 47 +++ .../pawsey/openfoam-org/aliases/2.2.0.yaml | 247 ++++++++++++++ .../pawsey/openfoam-org/aliases/2.4.x.yaml | 257 +++++++++++++++ .../pawsey/openfoam-org/aliases/5.x.yaml | 229 +++++++++++++ .../pawsey/openfoam-org/aliases/7.yaml | 209 ++++++++++++ .../pawsey/openfoam-org/aliases/8.yaml | 202 ++++++++++++ .../pawsey/openfoam-org/container.yaml | 19 ++ .../pawsey/openfoam/aliases/v1712.yaml | 280 ++++++++++++++++ .../pawsey/openfoam/aliases/v1812.yaml | 280 ++++++++++++++++ .../pawsey/openfoam/aliases/v1912.yaml | 292 ++++++++++++++++ .../pawsey/openfoam/aliases/v2006.yaml | 309 +++++++++++++++++ .../pawsey/openfoam/aliases/v2012.yaml | 312 ++++++++++++++++++ .../quay.io/pawsey/openfoam/container.yaml | 18 + shpc/main/client.py | 5 + shpc/main/container/config.py | 45 +++ shpc/main/modules/base.py | 14 +- shpc/main/schemas.py | 2 +- shpc/main/wrappers/__init__.py | 2 +- shpc/tests/test_container_config.py | 59 +++- shpc/tests/testdata/alias-container.yaml | 19 ++ shpc/tests/testdata/overrides-invalid.yaml | 3 + shpc/tests/testdata/overrides.yaml | 2 + .../testdata/samtools/1.14--hb421002_0.yaml | 28 ++ .../testdata/samtools/1.15--h3843a85_0.yaml | 2 + shpc/tests/testdata/samtools/container.yaml | 31 ++ shpc/version.py | 2 +- 28 files changed, 2911 insertions(+), 12 deletions(-) create mode 100644 registry/quay.io/pawsey/openfoam-org/aliases/2.2.0.yaml create mode 100644 registry/quay.io/pawsey/openfoam-org/aliases/2.4.x.yaml create mode 100644 registry/quay.io/pawsey/openfoam-org/aliases/5.x.yaml create mode 100644 registry/quay.io/pawsey/openfoam-org/aliases/7.yaml create mode 100644 registry/quay.io/pawsey/openfoam-org/aliases/8.yaml create mode 100644 registry/quay.io/pawsey/openfoam-org/container.yaml create mode 100644 registry/quay.io/pawsey/openfoam/aliases/v1712.yaml create mode 100644 registry/quay.io/pawsey/openfoam/aliases/v1812.yaml create mode 100644 registry/quay.io/pawsey/openfoam/aliases/v1912.yaml create mode 100644 registry/quay.io/pawsey/openfoam/aliases/v2006.yaml create mode 100644 registry/quay.io/pawsey/openfoam/aliases/v2012.yaml create mode 100644 registry/quay.io/pawsey/openfoam/container.yaml create mode 100644 shpc/tests/testdata/alias-container.yaml create mode 100644 shpc/tests/testdata/overrides-invalid.yaml create mode 100644 shpc/tests/testdata/overrides.yaml create mode 100644 shpc/tests/testdata/samtools/1.14--hb421002_0.yaml create mode 100644 shpc/tests/testdata/samtools/1.15--h3843a85_0.yaml create mode 100644 shpc/tests/testdata/samtools/container.yaml diff --git a/.github/workflows/test-container.yml b/.github/workflows/test-container.yml index 78662baf5..56134a135 100644 --- a/.github/workflows/test-container.yml +++ b/.github/workflows/test-container.yml @@ -33,12 +33,15 @@ jobs: run: | # Continue if we have a changed recipe file if [[ "${{ matrix.changed_recipe }}" = registry* ]]; then - echo "keepgoing=true" >> $GITHUB_ENV + recipe_basename=$(basename "${{ matrix.changed_recipe }}") + if [[ "${recipe_basename}" == "container.yaml" ]]; then + echo "keepgoing=true" >> $GITHUB_ENV + fi fi - name: Checkout if: ${{ env.keepgoing == 'true' }} - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Make Space For Build if: ${{ env.keepgoing == 'true' }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 63c87f01d..e66b24829 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and **Merged pull requests**. Critical items to know are: The versions coincide with releases on pip. Only major versions will be released as tags on Github. ## [0.0.x](https://github.com/singularityhub/singularity-hpc/tree/main) (0.0.x) + - adding support for container.yaml overrides (0.0.56) - `SINGULARITY_CONTAINER` and `PODMAN_CONTAINER` support (0.0.55) - support for views create, delete, edit, install, uninstall (0.0.54) - also including cleanup of module in views on uninstall diff --git a/docs/getting_started/developer-guide.rst b/docs/getting_started/developer-guide.rst index 52357d8cb..c6ff894ef 100644 --- a/docs/getting_started/developer-guide.rst +++ b/docs/getting_started/developer-guide.rst @@ -198,6 +198,50 @@ For each of the above, depending on the prefix of options that you choose, it wi This means that if you design a new registry recipe, you should consider how to run it for both kinds of technology. Also note that ``docker_options`` are those that will also be used for Podman. +Overrides +--------- + +It might be the case that as your containers change over time, the set of any of: + +- commands (aliases) +- docker_script +- singularity_script +- environment (env) +- features +- description + +does too! Or it be the case that you have hundreds of aliases, and want to better organize them separately from the container.yaml. To support this, shpc +(as of version 0.0.56) has support for an ``overrides`` section in the container.yaml, meaning that you can define pairs of container +tags and relative path lookups to external files with any of the stated sections. A simple example might look like this: + +.. code-block:: yaml + + docker: python + url: https://hub.docker.com/_/python + maintainer: '@vsoch' + description: An interpreted, high-level and general-purpose programming language. + latest: + 3.9.5-alpine: sha256:f189f7366b0d381bf6186b2a2c3d37f143c587e0da2e8dcc21a732bddf4e6f7b + tags: + 3.9.2-alpine: sha256:f046c06388c0721961fe5c9b6184d2f8aeb7eb01b39601babab06cfd975dae01 + overrides: + 3.9.2-alpine: aliases/3.9.2-alpine.yaml + aliases: + python: /usr/local/bin/python + + +Since this file only has aliases, we chose to use a subdirectory called "aliases" to make that clear, however +the file can have any of the fields mentioned above, and can be organized in any relative path to the container directory that you deem apppropriate. +Here is what this corresponding file with relative path ``aliases/3.9.2-alpine.yaml`` might look like this: + +.. code-block:: yaml + + aliases: + python: /alias/path/to/python + +Finally, for all fields mentioned above, the format is expected to follow the same convention as above (and it will be validated again on update). + + Wrapper Script -------------- @@ -514,6 +558,9 @@ Fields include: * - aliases - Named entrypoints for container (dict) as described above - false + * - overrides + - Key value pairs to override container.yaml defaults. + - false * - url - Documentation or other url for the container uri - false diff --git a/registry/quay.io/pawsey/openfoam-org/aliases/2.2.0.yaml b/registry/quay.io/pawsey/openfoam-org/aliases/2.2.0.yaml new file mode 100644 index 000000000..f21c916cc --- /dev/null +++ b/registry/quay.io/pawsey/openfoam-org/aliases/2.2.0.yaml @@ -0,0 +1,247 @@ +aliases: + Co: Co + LTSInterFoam: LTSInterFoam + LTSReactingParcelFoam: LTSReactingParcelFoam + Lambda2: Lambda2 + MRFInterFoam: MRFInterFoam + MRFMultiphaseInterFoam: MRFMultiphaseInterFoam + Mach: Mach + PDRFoam: PDRFoam + PDRMesh: PDRMesh + Pe: Pe + Q: Q + R: R + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + applyWallFunctionBoundaryConditions: applyWallFunctionBoundaryConditions + attachMesh: attachMesh + autoPatch: autoPatch + autoRefineMesh: autoRefineMesh + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkMesh: checkMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFoam: compressibleInterFoam + compressibleTwoPhaseEulerFoam: compressibleTwoPhaseEulerFoam + createBaffles: createBaffles + createPatch: createPatch + createTurbulenceFields: createTurbulenceFields + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + dsmcFieldsCalc: dsmcFieldsCalc + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + enstrophy: enstrophy + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + execFlowFunctionObjects: execFlowFunctionObjects + expandDictionary: expandDictionary + extrude2DMesh: extrude2DMesh + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + flattenMesh: flattenMesh + flowType: flowType + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamCalc: foamCalc + foamDataToFluent: foamDataToFluent + foamDebugSwitches: foamDebugSwitches + foamFormatConvert: foamFormatConvert + foamHelp: foamHelp + foamInfoExec: foamInfoExec + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamUpgradeFvSolution: foamUpgradeFvSolution + gambitToFoam: gambitToFoam + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + insideCells: insideCells + interDyMFoam: interDyMFoam + interFoam: interFoam + interMixingFoam: interMixingFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + magneticFoam: magneticFoam + mapFields: mapFields + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + pPrime2: pPrime2 + particleTracks: particleTracks + patchAverage: patchAverage + patchIntegrate: patchIntegrate + patchSummary: patchSummary + pdfPlot: pdfPlot + pimpleDyMFoam: pimpleDyMFoam + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousInterFoam: porousInterFoam + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + potentialFoam: potentialFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + probeLocations: probeLocations + ptot: ptot + reactingFoam: reactingFoam + reactingParcelFilmFoam: reactingParcelFilmFoam + reactingParcelFoam: reactingParcelFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + removeFaces: removeFaces + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoLTSPimpleFoam: rhoLTSPimpleFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPimplecFoam: rhoPimplecFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rhoSimplecFoam: rhoSimplecFoam + rotateMesh: rotateMesh + sammToFoam: sammToFoam + sample: sample + scalarTransportFoam: scalarTransportFoam + selectCells: selectCells + setFields: setFields + setSet: setSet + setsToZones: setsToZones + settlingFoam: settlingFoam + shallowWaterFoam: shallowWaterFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + singleCellMesh: singleCellMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayEngineFoam: sprayEngineFoam + sprayFoam: sprayFoam + star3ToFoam: star3ToFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + streamFunction: streamFunction + stressComponents: stressComponents + subsetMesh: subsetMesh + surfaceAdd: surfaceAdd + surfaceAutoPatch: surfaceAutoPatch + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceInertia: surfaceInertia + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshConvertTesting: surfaceMeshConvertTesting + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSmooth: surfaceSmooth + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + temporalInterpolate: temporalInterpolate + tetgenToFoam: tetgenToFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + uprime: uprime + viewFactorsGen: viewFactorsGen + vorticity: vorticity + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + wallGradU: wallGradU + wallHeatFlux: wallHeatFlux + wallShearStress: wallShearStress + wdot: wdot + writeCellCentres: writeCellCentres + writeMeshObj: writeMeshObj + yPlusLES: yPlusLES + yPlusRAS: yPlusRAS + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam-org/aliases/2.4.x.yaml b/registry/quay.io/pawsey/openfoam-org/aliases/2.4.x.yaml new file mode 100644 index 000000000..642eeccec --- /dev/null +++ b/registry/quay.io/pawsey/openfoam-org/aliases/2.4.x.yaml @@ -0,0 +1,257 @@ +aliases: + Co: Co + DPMFoam: DPMFoam + LTSInterFoam: LTSInterFoam + LTSReactingFoam: LTSReactingFoam + LTSReactingParcelFoam: LTSReactingParcelFoam + Lambda2: Lambda2 + MPPICFoam: MPPICFoam + Mach: Mach + PDRFoam: PDRFoam + PDRMesh: PDRMesh + Pe: Pe + Q: Q + R: R + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + applyWallFunctionBoundaryConditions: applyWallFunctionBoundaryConditions + attachMesh: attachMesh + autoPatch: autoPatch + autoRefineMesh: autoRefineMesh + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkMesh: checkMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + createBaffles: createBaffles + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + createTurbulenceFields: createTurbulenceFields + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFieldsCalc: dsmcFieldsCalc + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + enstrophy: enstrophy + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + execFlowFunctionObjects: execFlowFunctionObjects + expandDictionary: expandDictionary + extrude2DMesh: extrude2DMesh + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + flattenMesh: flattenMesh + flowType: flowType + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamCalc: foamCalc + foamDataToFluent: foamDataToFluent + foamDebugSwitches: foamDebugSwitches + foamFormatConvert: foamFormatConvert + foamHelp: foamHelp + foamInfoExec: foamInfoExec + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamUpgradeFvSolution: foamUpgradeFvSolution + gambitToFoam: gambitToFoam + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + insideCells: insideCells + interDyMFoam: interDyMFoam + interFoam: interFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + magneticFoam: magneticFoam + mapFields: mapFields + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterDyMFoam: multiphaseInterDyMFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + pPrime2: pPrime2 + particleTracks: particleTracks + patchAverage: patchAverage + patchIntegrate: patchIntegrate + patchSummary: patchSummary + pdfPlot: pdfPlot + pimpleDyMFoam: pimpleDyMFoam + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousInterFoam: porousInterFoam + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + probeLocations: probeLocations + ptot: ptot + reactingFoam: reactingFoam + reactingParcelFilmFoam: reactingParcelFilmFoam + reactingParcelFoam: reactingParcelFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + removeFaces: removeFaces + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoLTSPimpleFoam: rhoLTSPimpleFoam + rhoPimpleDyMFoam: rhoPimpleDyMFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPimplecFoam: rhoPimplecFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rhoSimplecFoam: rhoSimplecFoam + rotateMesh: rotateMesh + sammToFoam: sammToFoam + sample: sample + scalarTransportFoam: scalarTransportFoam + selectCells: selectCells + setFields: setFields + setSet: setSet + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + singleCellMesh: singleCellMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayEngineFoam: sprayEngineFoam + sprayFoam: sprayFoam + star3ToFoam: star3ToFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + streamFunction: streamFunction + stressComponents: stressComponents + subsetMesh: subsetMesh + surfaceAdd: surfaceAdd + surfaceAutoPatch: surfaceAutoPatch + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshConvertTesting: surfaceMeshConvertTesting + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + temporalInterpolate: temporalInterpolate + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + uprime: uprime + viewFactorsGen: viewFactorsGen + vorticity: vorticity + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + wallGradU: wallGradU + wallHeatFlux: wallHeatFlux + wallShearStress: wallShearStress + wdot: wdot + writeCellCentres: writeCellCentres + writeMeshObj: writeMeshObj + yPlusLES: yPlusLES + yPlusRAS: yPlusRAS + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam-org/aliases/5.x.yaml b/registry/quay.io/pawsey/openfoam-org/aliases/5.x.yaml new file mode 100644 index 000000000..57fc12d93 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam-org/aliases/5.x.yaml @@ -0,0 +1,229 @@ +aliases: + DPMDyMFoam: DPMDyMFoam + DPMFoam: DPMFoam + MPPICDyMFoam: MPPICDyMFoam + MPPICFoam: MPPICFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + autoRefineMesh: autoRefineMesh + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkMesh: checkMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + createBaffles: createBaffles + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + extrude2DMesh: extrude2DMesh + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamHelp: foamHelp + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + insideCells: insideCells + interDyMFoam: interDyMFoam + interFoam: interFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + magneticFoam: magneticFoam + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterDyMFoam: multiphaseInterDyMFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + particleTracks: particleTracks + patchSummary: patchSummary + pdfPlot: pdfPlot + pimpleDyMFoam: pimpleDyMFoam + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + reactingFoam: reactingFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFilmFoam: reactingParcelFilmFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + removeFaces: removeFaces + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoPimpleDyMFoam: rhoPimpleDyMFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + sammToFoam: sammToFoam + scalarTransportFoam: scalarTransportFoam + selectCells: selectCells + setFields: setFields + setSet: setSet + setWaves: setWaves + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + singleCellMesh: singleCellMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayDyMFoam: sprayDyMFoam + sprayEngineFoam: sprayEngineFoam + sprayFoam: sprayFoam + star3ToFoam: star3ToFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + surfaceAdd: surfaceAdd + surfaceAutoPatch: surfaceAutoPatch + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshConvertTesting: surfaceMeshConvertTesting + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + temporalInterpolate: temporalInterpolate + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelDyMFoam: uncoupledKinematicParcelDyMFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeMeshObj: writeMeshObj + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam-org/aliases/7.yaml b/registry/quay.io/pawsey/openfoam-org/aliases/7.yaml new file mode 100644 index 000000000..66c7d69c5 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam-org/aliases/7.yaml @@ -0,0 +1,209 @@ +aliases: + DPMFoam: DPMFoam + MPPICFoam: MPPICFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiEngineFoam: XiEngineFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + autoRefineMesh: autoRefineMesh + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkMesh: checkMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + createBaffles: createBaffles + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + extrude2DMesh: extrude2DMesh + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamSetupCHT: foamSetupCHT + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + insideCells: insideCells + interFoam: interFoam + interMixingFoam: interMixingFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + magneticFoam: magneticFoam + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + particleTracks: particleTracks + patchSummary: patchSummary + pdfPlot: pdfPlot + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + reactingFoam: reactingFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + removeFaces: removeFaces + renumberMesh: renumberMesh + rhoCentralFoam: rhoCentralFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + sammToFoam: sammToFoam + scalarTransportFoam: scalarTransportFoam + selectCells: selectCells + setFields: setFields + setSet: setSet + setWaves: setWaves + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + singleCellMesh: singleCellMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayFoam: sprayFoam + star3ToFoam: star3ToFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + surfaceAdd: surfaceAdd + surfaceAutoPatch: surfaceAutoPatch + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFeatures: surfaceFeatures + surfaceFind: surfaceFind + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshConvertTesting: surfaceMeshConvertTesting + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + temporalInterpolate: temporalInterpolate + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeMeshObj: writeMeshObj + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam-org/aliases/8.yaml b/registry/quay.io/pawsey/openfoam-org/aliases/8.yaml new file mode 100644 index 000000000..d6fa05106 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam-org/aliases/8.yaml @@ -0,0 +1,202 @@ +aliases: + DPMFoam: DPMFoam + MPPICFoam: MPPICFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiEngineFoam: XiEngineFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + autoRefineMesh: autoRefineMesh + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkMesh: checkMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + createBaffles: createBaffles + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + extrude2DMesh: extrude2DMesh + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamSetupCHT: foamSetupCHT + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + gambitToFoam: gambitToFoam + gmshToFoam: gmshToFoam + icoFoam: icoFoam + ideasUnvToFoam: ideasUnvToFoam + insideCells: insideCells + interFoam: interFoam + interMixingFoam: interMixingFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + magneticFoam: magneticFoam + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + particleFoam: particleFoam + particleTracks: particleTracks + patchSummary: patchSummary + pdfPlot: pdfPlot + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + reactingFoam: reactingFoam + reactingParcelFoam: reactingParcelFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + removeFaces: removeFaces + renumberMesh: renumberMesh + rhoCentralFoam: rhoCentralFoam + rhoParticleFoam: rhoParticleFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + sammToFoam: sammToFoam + scalarTransportFoam: scalarTransportFoam + selectCells: selectCells + setFields: setFields + setSet: setSet + setWaves: setWaves + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + singleCellMesh: singleCellMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayFoam: sprayFoam + star3ToFoam: star3ToFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + surfaceAdd: surfaceAdd + surfaceAutoPatch: surfaceAutoPatch + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatures: surfaceFeatures + surfaceFind: surfaceFind + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshConvertTesting: surfaceMeshConvertTesting + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + temporalInterpolate: temporalInterpolate + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeMeshObj: writeMeshObj + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam-org/container.yaml b/registry/quay.io/pawsey/openfoam-org/container.yaml new file mode 100644 index 000000000..0ef77afd8 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam-org/container.yaml @@ -0,0 +1,19 @@ +docker: quay.io/pawsey/openfoam-org +url: https://quay.io/repository/pawsey/openfoam-org +maintainer: '@marcodelapierre' +description: OpenFOAM (openfoam.org) images built on top of MPICH. +latest: + '8': sha256:13eafb0fa58dafbdaacf8000886bdd3c9c63ee29c35f09a2cc1cdf44c1871226 +tags: + '8': sha256:13eafb0fa58dafbdaacf8000886bdd3c9c63ee29c35f09a2cc1cdf44c1871226 + '7': sha256:3d427b3dec890193bb671185acefdc91fb126363b5f368d147603002b4708afe + '5.x': sha256:843cdada36df281c832298ba22f5364a61ca05d47b8596fb90bd3a854136d777 + '2.4.x': sha256:39b619a4e5ddea85803b228c03a3665863d768876dff4c87211f04279df47a9d + '2.2.0': sha256:32f0a464f0ea128e6b68b58e90719c24b5acb962dc8b7b8767440f8d70ed9156 +overrides: + '2.2.0': aliases/2.2.0.yaml + '2.4.x': aliases/2.4.x.yaml + '5.x': aliases/5.x.yaml + '7': aliases/7.yaml + '8': aliases/8.yaml +#aliases: diff --git a/registry/quay.io/pawsey/openfoam/aliases/v1712.yaml b/registry/quay.io/pawsey/openfoam/aliases/v1712.yaml new file mode 100644 index 000000000..c579bc6a5 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam/aliases/v1712.yaml @@ -0,0 +1,280 @@ +aliases: + DPMDyMFoam: DPMDyMFoam + DPMFoam: DPMFoam + FLMAToSurface: FLMAToSurface + FMSToSurface: FMSToSurface + FMSToVTK: FMSToVTK + MPPICDyMFoam: MPPICDyMFoam + MPPICFoam: MPPICFoam + MPPICInterFoam: MPPICInterFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiDyMFoam: XiDyMFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cartesian2DMesh: cartesian2DMesh + cartesianMesh: cartesianMesh + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkFaMesh: checkFaMesh + checkMesh: checkMesh + checkSurfaceMesh: checkSurfaceMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + copySurfaceParts: copySurfaceParts + createBaffles: createBaffles + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + createZeroDirectory: createZeroDirectory + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + extrude2DMesh: extrude2DMesh + extrudeEdgesInto2DSurface: extrudeEdgesInto2DSurface + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faSavageHutterFoam: faSavageHutterFoam + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + fireToFoam: fireToFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamHelp: foamHelp + foamListRegions: foamListRegions + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToFireMesh: foamToFireMesh + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + generateBoundaryLayers: generateBoundaryLayers + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + importSurfaceAsSubset: importSurfaceAsSubset + improveMeshQuality: improveMeshQuality + improveSymmetryPlanes: improveSymmetryPlanes + insideCells: insideCells + interCondensatingEvaporatingFoam: interCondensatingEvaporatingFoam + interDyMFoam: interDyMFoam + interFoam: interFoam + interIsoFoam: interIsoFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + liquidFilmFoam: liquidFilmFoam + lumpedPointForces: lumpedPointForces + lumpedPointMovement: lumpedPointMovement + lumpedPointZones: lumpedPointZones + magneticFoam: magneticFoam + makeFaMesh: makeFaMesh + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mergeSurfacePatches: mergeSurfacePatches + meshToFPMA: meshToFPMA + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterDyMFoam: multiphaseInterDyMFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + overInterDyMFoam: overInterDyMFoam + overLaplacianDyMFoam: overLaplacianDyMFoam + overPimpleDyMFoam: overPimpleDyMFoam + overPotentialFoam: overPotentialFoam + overRhoPimpleDyMFoam: overRhoPimpleDyMFoam + overRhoSimpleFoam: overRhoSimpleFoam + overSimpleFoam: overSimpleFoam + pMesh: pMesh + particleTracks: particleTracks + patchSummary: patchSummary + patchesToSubsets: patchesToSubsets + pdfPlot: pdfPlot + pimpleDyMFoam: pimpleDyMFoam + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + preparePar: preparePar + profilingSummary: profilingSummary + reactingFoam: reactingFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + releaseAreaMapping: releaseAreaMapping + removeFaces: removeFaces + removeSurfaceFacets: removeSurfaceFacets + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoPimpleAdiabaticFoam: rhoPimpleAdiabaticFoam + rhoPimpleDyMFoam: rhoPimpleDyMFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + scalarTransportFoam: scalarTransportFoam + scaleMesh: scaleMesh + scaleSurfaceMesh: scaleSurfaceMesh + selectCells: selectCells + setAlphaField: setAlphaField + setFields: setFields + setSet: setSet + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleCoalParcelFoam: simpleCoalParcelFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + singleCellMesh: singleCellMesh + slopeMesh: slopeMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + snappyRefineMesh: snappyRefineMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + sphereSurfactantFoam: sphereSurfactantFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayDyMFoam: sprayDyMFoam + sprayEngineFoam: sprayEngineFoam + sprayFoam: sprayFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + subsetToPatch: subsetToPatch + surfaceAdd: surfaceAdd + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureEdges: surfaceFeatureEdges + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceGenerateBoundingBox: surfaceGenerateBoundingBox + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceInflate: surfaceInflate + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePatch: surfacePatch + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToFMS: surfaceToFMS + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + surfactantFoam: surfactantFoam + temporalInterpolate: temporalInterpolate + tetMesh: tetMesh + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelDyMFoam: uncoupledKinematicParcelDyMFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeMeshObj: writeMeshObj + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam/aliases/v1812.yaml b/registry/quay.io/pawsey/openfoam/aliases/v1812.yaml new file mode 100644 index 000000000..bb892f6d1 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam/aliases/v1812.yaml @@ -0,0 +1,280 @@ +aliases: + DPMDyMFoam: DPMDyMFoam + DPMFoam: DPMFoam + FLMAToSurface: FLMAToSurface + FMSToSurface: FMSToSurface + FMSToVTK: FMSToVTK + MPPICDyMFoam: MPPICDyMFoam + MPPICFoam: MPPICFoam + MPPICInterFoam: MPPICInterFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiDyMFoam: XiDyMFoam + XiEngineFoam: XiEngineFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cartesian2DMesh: cartesian2DMesh + cartesianMesh: cartesianMesh + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkFaMesh: checkFaMesh + checkMesh: checkMesh + checkSurfaceMesh: checkSurfaceMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + copySurfaceParts: copySurfaceParts + createBaffles: createBaffles + createBoxTurb: createBoxTurb + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + createZeroDirectory: createZeroDirectory + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + extrude2DMesh: extrude2DMesh + extrudeEdgesInto2DSurface: extrudeEdgesInto2DSurface + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faSavageHutterFoam: faSavageHutterFoam + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + fireToFoam: fireToFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamHelp: foamHelp + foamListRegions: foamListRegions + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamRestoreFields: foamRestoreFields + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToFireMesh: foamToFireMesh + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + generateBoundaryLayers: generateBoundaryLayers + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoReactingMultiphaseInterFoam: icoReactingMultiphaseInterFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + importSurfaceAsSubset: importSurfaceAsSubset + improveMeshQuality: improveMeshQuality + improveSymmetryPlanes: improveSymmetryPlanes + insideCells: insideCells + interCondensatingEvaporatingFoam: interCondensatingEvaporatingFoam + interFoam: interFoam + interIsoFoam: interIsoFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + liquidFilmFoam: liquidFilmFoam + lumpedPointForces: lumpedPointForces + lumpedPointMovement: lumpedPointMovement + lumpedPointZones: lumpedPointZones + magneticFoam: magneticFoam + makeFaMesh: makeFaMesh + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mergeSurfacePatches: mergeSurfacePatches + meshToFPMA: meshToFPMA + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + overInterDyMFoam: overInterDyMFoam + overLaplacianDyMFoam: overLaplacianDyMFoam + overPimpleDyMFoam: overPimpleDyMFoam + overPotentialFoam: overPotentialFoam + overRhoPimpleDyMFoam: overRhoPimpleDyMFoam + overRhoSimpleFoam: overRhoSimpleFoam + overSimpleFoam: overSimpleFoam + pMesh: pMesh + particleTracks: particleTracks + patchSummary: patchSummary + patchesToSubsets: patchesToSubsets + pdfPlot: pdfPlot + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + preparePar: preparePar + profilingSummary: profilingSummary + reactingFoam: reactingFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + releaseAreaMapping: releaseAreaMapping + removeFaces: removeFaces + removeSurfaceFacets: removeSurfaceFacets + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoPimpleAdiabaticFoam: rhoPimpleAdiabaticFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + scalarTransportFoam: scalarTransportFoam + scaleMesh: scaleMesh + scaleSurfaceMesh: scaleSurfaceMesh + selectCells: selectCells + setAlphaField: setAlphaField + setFields: setFields + setSet: setSet + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleCoalParcelFoam: simpleCoalParcelFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + simpleSprayFoam: simpleSprayFoam + singleCellMesh: singleCellMesh + slopeMesh: slopeMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + snappyRefineMesh: snappyRefineMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + sphereSurfactantFoam: sphereSurfactantFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayDyMFoam: sprayDyMFoam + sprayFoam: sprayFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + subsetToPatch: subsetToPatch + surfaceAdd: surfaceAdd + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureEdges: surfaceFeatureEdges + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceGenerateBoundingBox: surfaceGenerateBoundingBox + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceInflate: surfaceInflate + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshExport: surfaceMeshExport + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceMeshTriangulate: surfaceMeshTriangulate + surfaceOrient: surfaceOrient + surfacePatch: surfacePatch + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToFMS: surfaceToFMS + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + surfactantFoam: surfactantFoam + temporalInterpolate: temporalInterpolate + tetMesh: tetMesh + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelDyMFoam: uncoupledKinematicParcelDyMFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeMeshObj: writeMeshObj + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam/aliases/v1912.yaml b/registry/quay.io/pawsey/openfoam/aliases/v1912.yaml new file mode 100644 index 000000000..40d7ce9aa --- /dev/null +++ b/registry/quay.io/pawsey/openfoam/aliases/v1912.yaml @@ -0,0 +1,292 @@ +aliases: + DPMDyMFoam: DPMDyMFoam + DPMFoam: DPMFoam + FLMAToSurface: FLMAToSurface + FMSToSurface: FMSToSurface + FMSToVTK: FMSToVTK + MPPICDyMFoam: MPPICDyMFoam + MPPICFoam: MPPICFoam + MPPICInterFoam: MPPICInterFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + PDRblockMesh: PDRblockMesh + PDRsetFields: PDRsetFields + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiDyMFoam: XiDyMFoam + XiEngineFoam: XiEngineFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointOptimisationFoam: adjointOptimisationFoam + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cartesian2DMesh: cartesian2DMesh + cartesianMesh: cartesianMesh + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkFaMesh: checkFaMesh + checkMesh: checkMesh + checkSurfaceMesh: checkSurfaceMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + chtMultiRegionTwoPhaseEulerFoam: chtMultiRegionTwoPhaseEulerFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + computeSensitivities: computeSensitivities + copySurfaceParts: copySurfaceParts + createBaffles: createBaffles + createBoxTurb: createBoxTurb + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + createZeroDirectory: createZeroDirectory + cumulativeDisplacement: cumulativeDisplacement + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + extrude2DMesh: extrude2DMesh + extrudeEdgesInto2DSurface: extrudeEdgesInto2DSurface + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faSavageHutterFoam: faSavageHutterFoam + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + fireToFoam: fireToFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamHelp: foamHelp + foamListRegions: foamListRegions + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamRestoreFields: foamRestoreFields + foamToEnsight: foamToEnsight + foamToEnsightParts: foamToEnsightParts + foamToFireMesh: foamToFireMesh + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + generateBoundaryLayers: generateBoundaryLayers + gmshToFoam: gmshToFoam + icoFoam: icoFoam + icoReactingMultiphaseInterFoam: icoReactingMultiphaseInterFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + importSurfaceAsSubset: importSurfaceAsSubset + improveMeshQuality: improveMeshQuality + improveSymmetryPlanes: improveSymmetryPlanes + insideCells: insideCells + interCondensatingEvaporatingFoam: interCondensatingEvaporatingFoam + interFoam: interFoam + interIsoFoam: interIsoFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + liquidFilmFoam: liquidFilmFoam + lumpedPointForces: lumpedPointForces + lumpedPointMovement: lumpedPointMovement + lumpedPointZones: lumpedPointZones + magneticFoam: magneticFoam + makeFaMesh: makeFaMesh + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mergeSurfacePatches: mergeSurfacePatches + meshToFPMA: meshToFPMA + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + orientFaceZone: orientFaceZone + overBuoyantPimpleDyMFoam: overBuoyantPimpleDyMFoam + overInterDyMFoam: overInterDyMFoam + overLaplacianDyMFoam: overLaplacianDyMFoam + overPimpleDyMFoam: overPimpleDyMFoam + overPotentialFoam: overPotentialFoam + overRhoPimpleDyMFoam: overRhoPimpleDyMFoam + overRhoSimpleFoam: overRhoSimpleFoam + overSimpleFoam: overSimpleFoam + pMesh: pMesh + particleTracks: particleTracks + patchSummary: patchSummary + patchesToSubsets: patchesToSubsets + pdfPlot: pdfPlot + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + preparePar: preparePar + profilingSummary: profilingSummary + reactingFoam: reactingFoam + reactingHeterogenousParcelFoam: reactingHeterogenousParcelFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + releaseAreaMapping: releaseAreaMapping + removeFaces: removeFaces + removeSurfaceFacets: removeSurfaceFacets + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoPimpleAdiabaticFoam: rhoPimpleAdiabaticFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + scalarTransportFoam: scalarTransportFoam + scaleMesh: scaleMesh + scaleSurfaceMesh: scaleSurfaceMesh + selectCells: selectCells + setAlphaField: setAlphaField + setExprBoundaryFields: setExprBoundaryFields + setExprFields: setExprFields + setFields: setFields + setSet: setSet + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleCoalParcelFoam: simpleCoalParcelFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + simpleSprayFoam: simpleSprayFoam + singleCellMesh: singleCellMesh + slopeMesh: slopeMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + snappyRefineMesh: snappyRefineMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + sphereSurfactantFoam: sphereSurfactantFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayDyMFoam: sprayDyMFoam + sprayFoam: sprayFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + subsetToPatch: subsetToPatch + surfaceAdd: surfaceAdd + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureEdges: surfaceFeatureEdges + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceGenerateBoundingBox: surfaceGenerateBoundingBox + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceInflate: surfaceInflate + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshExport: surfaceMeshExport + surfaceMeshExtract: surfaceMeshExtract + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceOrient: surfaceOrient + surfacePatch: surfacePatch + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToFMS: surfaceToFMS + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + surfactantFoam: surfactantFoam + temporalInterpolate: temporalInterpolate + tetMesh: tetMesh + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelDyMFoam: uncoupledKinematicParcelDyMFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeActiveDesignVariables: writeActiveDesignVariables + writeMeshObj: writeMeshObj + writeMorpherCPs: writeMorpherCPs + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam/aliases/v2006.yaml b/registry/quay.io/pawsey/openfoam/aliases/v2006.yaml new file mode 100644 index 000000000..8ae1c5f80 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam/aliases/v2006.yaml @@ -0,0 +1,309 @@ +aliases: + DPMDyMFoam: DPMDyMFoam + DPMFoam: DPMFoam + FLMAToSurface: FLMAToSurface + FMSToSurface: FMSToSurface + FMSToVTK: FMSToVTK + MPPICDyMFoam: MPPICDyMFoam + MPPICFoam: MPPICFoam + MPPICInterFoam: MPPICInterFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + PDRblockMesh: PDRblockMesh + PDRsetFields: PDRsetFields + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiDyMFoam: XiDyMFoam + XiEngineFoam: XiEngineFoam + XiFoam: XiFoam + adiabaticFlameT: adiabaticFlameT + adjointOptimisationFoam: adjointOptimisationFoam + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPbePimpleFoam: buoyantPbePimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cartesian2DMesh: cartesian2DMesh + cartesianMesh: cartesianMesh + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkFaMesh: checkFaMesh + checkMesh: checkMesh + checkSurfaceMesh: checkSurfaceMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + chtMultiRegionTwoPhaseEulerFoam: chtMultiRegionTwoPhaseEulerFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleInterIsoFoam: compressibleInterIsoFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + compressiblePbeTransportFoam: compressiblePbeTransportFoam + computeMoments: computeMoments + computeSensitivities: computeSensitivities + copySurfaceParts: copySurfaceParts + createBaffles: createBaffles + createBoxTurb: createBoxTurb + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + createZeroDirectory: createZeroDirectory + cumulativeDisplacement: cumulativeDisplacement + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + denseAGFoam: denseAGFoam + diluteVdfTransportFoam: diluteVdfTransportFoam + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + explicitRhoFoam: explicitRhoFoam + extrude2DMesh: extrude2DMesh + extrudeEdgesInto2DSurface: extrudeEdgesInto2DSurface + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faParkerFukushimaFoam: faParkerFukushimaFoam + faSavageHutterFoam: faSavageHutterFoam + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + fireToFoam: fireToFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamHasLibrary: foamHasLibrary + foamHelp: foamHelp + foamListRegions: foamListRegions + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamRestoreFields: foamRestoreFields + foamToEnsight: foamToEnsight + foamToFireMesh: foamToFireMesh + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + generateBoundaryLayers: generateBoundaryLayers + generateMoments: generateMoments + gmshToFoam: gmshToFoam + gridToSTL: gridToSTL + icoFoam: icoFoam + icoReactingMultiphaseInterFoam: icoReactingMultiphaseInterFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + importSurfaceAsSubset: importSurfaceAsSubset + improveMeshQuality: improveMeshQuality + improveSymmetryPlanes: improveSymmetryPlanes + insideCells: insideCells + interCondensatingEvaporatingFoam: interCondensatingEvaporatingFoam + interFoam: interFoam + interIsoFoam: interIsoFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + liquidFilmFoam: liquidFilmFoam + lumpedPointForces: lumpedPointForces + lumpedPointMovement: lumpedPointMovement + lumpedPointZones: lumpedPointZones + magneticFoam: magneticFoam + makeFaMesh: makeFaMesh + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mergeSurfacePatches: mergeSurfacePatches + meshToFPMA: meshToFPMA + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixingTransportFoam: mixingTransportFoam + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + oneWayCoupledVdfTransportFoam: oneWayCoupledVdfTransportFoam + orientFaceZone: orientFaceZone + overBuoyantPimpleDyMFoam: overBuoyantPimpleDyMFoam + overInterDyMFoam: overInterDyMFoam + overLaplacianDyMFoam: overLaplacianDyMFoam + overPimpleDyMFoam: overPimpleDyMFoam + overPotentialFoam: overPotentialFoam + overRhoPimpleDyMFoam: overRhoPimpleDyMFoam + overRhoSimpleFoam: overRhoSimpleFoam + overSimpleFoam: overSimpleFoam + pMesh: pMesh + particleTracks: particleTracks + patchSummary: patchSummary + patchesToSubsets: patchesToSubsets + pbeFoam: pbeFoam + pbeTransportFoam: pbeTransportFoam + pdfPlot: pdfPlot + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + polydisperseBubbleFoam: polydisperseBubbleFoam + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + preparePar: preparePar + profilingSummary: profilingSummary + reactingFoam: reactingFoam + reactingHeterogenousParcelFoam: reactingHeterogenousParcelFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + reconstructPointDistribution: reconstructPointDistribution + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + releaseAreaMapping: releaseAreaMapping + removeFaces: removeFaces + removeSurfaceFacets: removeSurfaceFacets + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoPimpleAdiabaticFoam: rhoPimpleAdiabaticFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + scalarTransportFoam: scalarTransportFoam + scaleMesh: scaleMesh + scaleSurfaceMesh: scaleSurfaceMesh + selectCells: selectCells + setAlphaField: setAlphaField + setExprBoundaryFields: setExprBoundaryFields + setExprFields: setExprFields + setFields: setFields + setSet: setSet + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleCoalParcelFoam: simpleCoalParcelFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + simpleSprayFoam: simpleSprayFoam + singleCellMesh: singleCellMesh + slopeMesh: slopeMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + snappyRefineMesh: snappyRefineMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + sphereSurfactantFoam: sphereSurfactantFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayDyMFoam: sprayDyMFoam + sprayFoam: sprayFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + subsetToPatch: subsetToPatch + surfaceAdd: surfaceAdd + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureEdges: surfaceFeatureEdges + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceGenerateBoundingBox: surfaceGenerateBoundingBox + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceInflate: surfaceInflate + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshExport: surfaceMeshExport + surfaceMeshExtract: surfaceMeshExtract + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceOrient: surfaceOrient + surfacePatch: surfacePatch + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToFMS: surfaceToFMS + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + surfactantFoam: surfactantFoam + temporalInterpolate: temporalInterpolate + tetMesh: tetMesh + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelDyMFoam: uncoupledKinematicParcelDyMFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + vdfTransportFoam: vdfTransportFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeActiveDesignVariables: writeActiveDesignVariables + writeMeshObj: writeMeshObj + writeMorpherCPs: writeMorpherCPs + zipUpMesh: zipUpMesh diff --git a/registry/quay.io/pawsey/openfoam/aliases/v2012.yaml b/registry/quay.io/pawsey/openfoam/aliases/v2012.yaml new file mode 100644 index 000000000..a8a7a937e --- /dev/null +++ b/registry/quay.io/pawsey/openfoam/aliases/v2012.yaml @@ -0,0 +1,312 @@ +aliases: + DPMDyMFoam: DPMDyMFoam + DPMFoam: DPMFoam + FLMAToSurface: FLMAToSurface + FMSToSurface: FMSToSurface + FMSToVTK: FMSToVTK + MPPICDyMFoam: MPPICDyMFoam + MPPICFoam: MPPICFoam + MPPICInterFoam: MPPICInterFoam + PDRFoam: PDRFoam + PDRMesh: PDRMesh + PDRblockMesh: PDRblockMesh + PDRsetFields: PDRsetFields + SRFPimpleFoam: SRFPimpleFoam + SRFSimpleFoam: SRFSimpleFoam + XiDyMFoam: XiDyMFoam + XiEngineFoam: XiEngineFoam + XiFoam: XiFoam + acousticFoam: acousticFoam + adiabaticFlameT: adiabaticFlameT + adjointOptimisationFoam: adjointOptimisationFoam + adjointShapeOptimizationFoam: adjointShapeOptimizationFoam + ansysToFoam: ansysToFoam + applyBoundaryLayer: applyBoundaryLayer + attachMesh: attachMesh + autoPatch: autoPatch + blockMesh: blockMesh + boundaryFoam: boundaryFoam + boxTurb: boxTurb + buoyantBoussinesqPimpleFoam: buoyantBoussinesqPimpleFoam + buoyantBoussinesqSimpleFoam: buoyantBoussinesqSimpleFoam + buoyantPbePimpleFoam: buoyantPbePimpleFoam + buoyantPimpleFoam: buoyantPimpleFoam + buoyantSimpleFoam: buoyantSimpleFoam + cartesian2DMesh: cartesian2DMesh + cartesianMesh: cartesianMesh + cavitatingDyMFoam: cavitatingDyMFoam + cavitatingFoam: cavitatingFoam + cfx4ToFoam: cfx4ToFoam + changeDictionary: changeDictionary + checkFaMesh: checkFaMesh + checkMesh: checkMesh + checkSurfaceMesh: checkSurfaceMesh + chemFoam: chemFoam + chemkinToFoam: chemkinToFoam + chtMultiRegionFoam: chtMultiRegionFoam + chtMultiRegionSimpleFoam: chtMultiRegionSimpleFoam + chtMultiRegionTwoPhaseEulerFoam: chtMultiRegionTwoPhaseEulerFoam + coalChemistryFoam: coalChemistryFoam + coldEngineFoam: coldEngineFoam + collapseEdges: collapseEdges + combinePatchFaces: combinePatchFaces + compressibleInterDyMFoam: compressibleInterDyMFoam + compressibleInterFilmFoam: compressibleInterFilmFoam + compressibleInterFoam: compressibleInterFoam + compressibleInterIsoFoam: compressibleInterIsoFoam + compressibleMultiphaseInterFoam: compressibleMultiphaseInterFoam + compressiblePbeTransportFoam: compressiblePbeTransportFoam + computeMoments: computeMoments + computeSensitivities: computeSensitivities + copySurfaceParts: copySurfaceParts + createBaffles: createBaffles + createBoxTurb: createBoxTurb + createExternalCoupledPatchGeometry: createExternalCoupledPatchGeometry + createPatch: createPatch + createZeroDirectory: createZeroDirectory + cumulativeDisplacement: cumulativeDisplacement + datToFoam: datToFoam + decomposePar: decomposePar + deformedGeom: deformedGeom + denseAGFoam: denseAGFoam + diluteVdfTransportFoam: diluteVdfTransportFoam + dnsFoam: dnsFoam + driftFluxFoam: driftFluxFoam + dsmcFoam: dsmcFoam + dsmcInitialise: dsmcInitialise + electrostaticFoam: electrostaticFoam + engineCompRatio: engineCompRatio + engineFoam: engineFoam + engineSwirl: engineSwirl + equilibriumCO: equilibriumCO + equilibriumFlameT: equilibriumFlameT + explicitRhoFoam: explicitRhoFoam + extrude2DMesh: extrude2DMesh + extrudeEdgesInto2DSurface: extrudeEdgesInto2DSurface + extrudeMesh: extrudeMesh + extrudeToRegionMesh: extrudeToRegionMesh + faParkerFukushimaFoam: faParkerFukushimaFoam + faSavageHutterFoam: faSavageHutterFoam + faceAgglomerate: faceAgglomerate + financialFoam: financialFoam + fireFoam: fireFoam + fireToFoam: fireToFoam + flattenMesh: flattenMesh + fluent3DMeshToFoam: fluent3DMeshToFoam + fluentMeshToFoam: fluentMeshToFoam + foamDataToFluent: foamDataToFluent + foamDictionary: foamDictionary + foamFormatConvert: foamFormatConvert + foamHasLibrary: foamHasLibrary + foamHelp: foamHelp + foamListRegions: foamListRegions + foamListTimes: foamListTimes + foamMeshToFluent: foamMeshToFluent + foamRestoreFields: foamRestoreFields + foamToEnsight: foamToEnsight + foamToFireMesh: foamToFireMesh + foamToGMV: foamToGMV + foamToStarMesh: foamToStarMesh + foamToSurface: foamToSurface + foamToTetDualMesh: foamToTetDualMesh + foamToVTK: foamToVTK + foamUpgradeCyclics: foamUpgradeCyclics + foamyHexMesh: foamyHexMesh + foamyQuadMesh: foamyQuadMesh + gambitToFoam: gambitToFoam + generateBoundaryLayers: generateBoundaryLayers + generateMoments: generateMoments + gmshToFoam: gmshToFoam + gridToSTL: gridToSTL + icoFoam: icoFoam + icoReactingMultiphaseInterFoam: icoReactingMultiphaseInterFoam + icoUncoupledKinematicParcelDyMFoam: icoUncoupledKinematicParcelDyMFoam + icoUncoupledKinematicParcelFoam: icoUncoupledKinematicParcelFoam + ideasUnvToFoam: ideasUnvToFoam + importSurfaceAsSubset: importSurfaceAsSubset + improveMeshQuality: improveMeshQuality + improveSymmetryPlanes: improveSymmetryPlanes + insideCells: insideCells + interCondensatingEvaporatingFoam: interCondensatingEvaporatingFoam + interFoam: interFoam + interIsoFoam: interIsoFoam + interMixingFoam: interMixingFoam + interPhaseChangeDyMFoam: interPhaseChangeDyMFoam + interPhaseChangeFoam: interPhaseChangeFoam + kivaToFoam: kivaToFoam + laplacianFoam: laplacianFoam + liquidFilmFoam: liquidFilmFoam + lumpedPointForces: lumpedPointForces + lumpedPointMovement: lumpedPointMovement + lumpedPointZones: lumpedPointZones + magneticFoam: magneticFoam + makeFaMesh: makeFaMesh + mapFields: mapFields + mapFieldsPar: mapFieldsPar + mdEquilibrationFoam: mdEquilibrationFoam + mdFoam: mdFoam + mdInitialise: mdInitialise + mergeMeshes: mergeMeshes + mergeOrSplitBaffles: mergeOrSplitBaffles + mergeSurfacePatches: mergeSurfacePatches + meshToFPMA: meshToFPMA + mhdFoam: mhdFoam + mirrorMesh: mirrorMesh + mixingTransportFoam: mixingTransportFoam + mixtureAdiabaticFlameT: mixtureAdiabaticFlameT + modifyMesh: modifyMesh + moveDynamicMesh: moveDynamicMesh + moveEngineMesh: moveEngineMesh + moveMesh: moveMesh + mshToFoam: mshToFoam + multiphaseEulerFoam: multiphaseEulerFoam + multiphaseInterFoam: multiphaseInterFoam + netgenNeutralToFoam: netgenNeutralToFoam + noise: noise + nonNewtonianIcoFoam: nonNewtonianIcoFoam + objToVTK: objToVTK + oneWayCoupledVdfTransportFoam: oneWayCoupledVdfTransportFoam + orientFaceZone: orientFaceZone + overBuoyantPimpleDyMFoam: overBuoyantPimpleDyMFoam + overInterDyMFoam: overInterDyMFoam + overLaplacianDyMFoam: overLaplacianDyMFoam + overPimpleDyMFoam: overPimpleDyMFoam + overPotentialFoam: overPotentialFoam + overRhoPimpleDyMFoam: overRhoPimpleDyMFoam + overRhoSimpleFoam: overRhoSimpleFoam + overSimpleFoam: overSimpleFoam + pMesh: pMesh + particleTracks: particleTracks + patchSummary: patchSummary + patchesToSubsets: patchesToSubsets + pbeFoam: pbeFoam + pbeTransportFoam: pbeTransportFoam + pdfPlot: pdfPlot + pimpleFoam: pimpleFoam + pisoFoam: pisoFoam + plot3dToFoam: plot3dToFoam + polyDualMesh: polyDualMesh + polydisperseBubbleFoam: polydisperseBubbleFoam + porousSimpleFoam: porousSimpleFoam + postChannel: postChannel + postProcess: postProcess + potentialFoam: potentialFoam + potentialFreeSurfaceDyMFoam: potentialFreeSurfaceDyMFoam + potentialFreeSurfaceFoam: potentialFreeSurfaceFoam + preparePar: preparePar + profilingSummary: profilingSummary + reactingFoam: reactingFoam + reactingHeterogenousParcelFoam: reactingHeterogenousParcelFoam + reactingMultiphaseEulerFoam: reactingMultiphaseEulerFoam + reactingParcelFoam: reactingParcelFoam + reactingTwoPhaseEulerFoam: reactingTwoPhaseEulerFoam + reconstructPar: reconstructPar + reconstructParMesh: reconstructParMesh + reconstructPointDistribution: reconstructPointDistribution + redistributePar: redistributePar + refineHexMesh: refineHexMesh + refineMesh: refineMesh + refineWallLayer: refineWallLayer + refinementLevel: refinementLevel + releaseAreaMapping: releaseAreaMapping + removeFaces: removeFaces + removeSurfaceFacets: removeSurfaceFacets + renumberMesh: renumberMesh + rhoCentralDyMFoam: rhoCentralDyMFoam + rhoCentralFoam: rhoCentralFoam + rhoPimpleAdiabaticFoam: rhoPimpleAdiabaticFoam + rhoPimpleFoam: rhoPimpleFoam + rhoPorousSimpleFoam: rhoPorousSimpleFoam + rhoReactingBuoyantFoam: rhoReactingBuoyantFoam + rhoReactingFoam: rhoReactingFoam + rhoSimpleFoam: rhoSimpleFoam + rotateMesh: rotateMesh + scalarTransportFoam: scalarTransportFoam + scaleMesh: scaleMesh + scaleSurfaceMesh: scaleSurfaceMesh + selectCells: selectCells + setAlphaField: setAlphaField + setExprBoundaryFields: setExprBoundaryFields + setExprFields: setExprFields + setFields: setFields + setSet: setSet + setsToZones: setsToZones + shallowWaterFoam: shallowWaterFoam + simpleCoalParcelFoam: simpleCoalParcelFoam + simpleFoam: simpleFoam + simpleReactingParcelFoam: simpleReactingParcelFoam + simpleSprayFoam: simpleSprayFoam + singleCellMesh: singleCellMesh + slopeMesh: slopeMesh + smapToFoam: smapToFoam + snappyHexMesh: snappyHexMesh + snappyRefineMesh: snappyRefineMesh + solidDisplacementFoam: solidDisplacementFoam + solidEquilibriumDisplacementFoam: solidEquilibriumDisplacementFoam + solidFoam: solidFoam + sonicDyMFoam: sonicDyMFoam + sonicFoam: sonicFoam + sonicLiquidFoam: sonicLiquidFoam + sphereSurfactantFoam: sphereSurfactantFoam + splitCells: splitCells + splitMesh: splitMesh + splitMeshRegions: splitMeshRegions + sprayDyMFoam: sprayDyMFoam + sprayFoam: sprayFoam + star4ToFoam: star4ToFoam + steadyParticleTracks: steadyParticleTracks + stitchMesh: stitchMesh + subsetMesh: subsetMesh + subsetToPatch: subsetToPatch + surfaceAdd: surfaceAdd + surfaceBooleanFeatures: surfaceBooleanFeatures + surfaceCheck: surfaceCheck + surfaceClean: surfaceClean + surfaceCoarsen: surfaceCoarsen + surfaceConvert: surfaceConvert + surfaceFeatureConvert: surfaceFeatureConvert + surfaceFeatureEdges: surfaceFeatureEdges + surfaceFeatureExtract: surfaceFeatureExtract + surfaceFind: surfaceFind + surfaceGenerateBoundingBox: surfaceGenerateBoundingBox + surfaceHookUp: surfaceHookUp + surfaceInertia: surfaceInertia + surfaceInflate: surfaceInflate + surfaceLambdaMuSmooth: surfaceLambdaMuSmooth + surfaceMeshConvert: surfaceMeshConvert + surfaceMeshExport: surfaceMeshExport + surfaceMeshExtract: surfaceMeshExtract + surfaceMeshImport: surfaceMeshImport + surfaceMeshInfo: surfaceMeshInfo + surfaceOrient: surfaceOrient + surfacePatch: surfacePatch + surfacePointMerge: surfacePointMerge + surfaceRedistributePar: surfaceRedistributePar + surfaceRefineRedGreen: surfaceRefineRedGreen + surfaceSplitByPatch: surfaceSplitByPatch + surfaceSplitByTopology: surfaceSplitByTopology + surfaceSplitNonManifolds: surfaceSplitNonManifolds + surfaceSubset: surfaceSubset + surfaceToFMS: surfaceToFMS + surfaceToPatch: surfaceToPatch + surfaceTransformPoints: surfaceTransformPoints + surfactantFoam: surfactantFoam + temporalInterpolate: temporalInterpolate + tetMesh: tetMesh + tetgenToFoam: tetgenToFoam + thermoFoam: thermoFoam + topoSet: topoSet + transformPoints: transformPoints + twoLiquidMixingFoam: twoLiquidMixingFoam + twoPhaseEulerFoam: twoPhaseEulerFoam + uncoupledKinematicParcelDyMFoam: uncoupledKinematicParcelDyMFoam + uncoupledKinematicParcelFoam: uncoupledKinematicParcelFoam + vdfTransportFoam: vdfTransportFoam + viewFactorsGen: viewFactorsGen + vtkUnstructuredToFoam: vtkUnstructuredToFoam + wallFunctionTable: wallFunctionTable + writeActiveDesignVariables: writeActiveDesignVariables + writeMeshObj: writeMeshObj + writeMorpherCPs: writeMorpherCPs + zipUpMesh: zipUpMesh + diff --git a/registry/quay.io/pawsey/openfoam/container.yaml b/registry/quay.io/pawsey/openfoam/container.yaml new file mode 100644 index 000000000..1df19ccc7 --- /dev/null +++ b/registry/quay.io/pawsey/openfoam/container.yaml @@ -0,0 +1,18 @@ +docker: quay.io/pawsey/openfoam +url: https://quay.io/repository/pawsey/openfoam +maintainer: '@marcodelapierre' +description: OpenFOAM (openfoam.com) images built on top of MPICH. +latest: + 'v2012': sha256:916191b7cbdeeed8ff3697eefe91bd60415b96ba9d3d1127bca2473942355fc8 +tags: + 'v2012': sha256:916191b7cbdeeed8ff3697eefe91bd60415b96ba9d3d1127bca2473942355fc8 + 'v2006': sha256:c1222ddcd389bd3daabe5a5fd7ccc5f9aa1737a4b5ccc622a35e0d487305c8f7 + 'v1912': sha256:ad68ad8e13252915300b29dcdb5803bca9bed68fa5099265c7071ace7f9e3330 + 'v1812': sha256:6197994d3eba966ab9c8cbdcfde97bdd67313fab55ada09d9665e974a0ef707a + 'v1712': sha256:ac766f92b678cf9c70aefaa914bcad3837675e57dae38554220ec9024a4a3dc9 +overrides: + v1712: aliases/v1712.yaml + v1812: aliases/v1812.yaml + v1912: aliases/v1912.yaml + v2006: aliases/v2006.yaml + v2012: aliases/v2012.yaml diff --git a/shpc/main/client.py b/shpc/main/client.py index b524b4fce..d6492cd50 100644 --- a/shpc/main/client.py +++ b/shpc/main/client.py @@ -151,6 +151,11 @@ def cleanup(tmpdir): # Derive the registry entry from the module_name config = self._load_container(module_name) + # Ensure any alias files exist + if config and not config.check_overrides(): + cleanup(tmpdir) + logger.exit("Test of %s was not successful." % module_name) + # Generate a test template test_file = os.path.join(tmpdir, "test.sh") diff --git a/shpc/main/container/config.py b/shpc/main/container/config.py index 9879be303..7d17bfeb2 100644 --- a/shpc/main/container/config.py +++ b/shpc/main/container/config.py @@ -129,6 +129,51 @@ def name(self): name = self.docker or self.oras or self.gh return ContainerName(name) + def load_override_file(self, tag): + """ + By the time we get here, the file needs to exist. + """ + # Do we have an alias file for the tag? + if not self.overrides or tag not in self.overrides: + return + override_file = os.path.join(self.package_dir, self.overrides[tag]) + if not os.path.exists(override_file): + logger.exit(f"Override file {override_file} does not exist.") + overrides = utils.read_yaml(override_file) + + # Only allow over-ride of these fields + allowed_overrides = [ + "aliases", + "docker_script", + "singularity_script", + "env", + "features", + "description", + ] + for k, v in overrides.items(): + if k in allowed_overrides: + self._config[k] = v + else: + logger.warning("%s is not an allowed override field." % k) + + # Always validate + self.validate() + + def check_overrides(self): + """ + Given a loaded config, ensure that all override files exist. + """ + if not self.overrides: + return True + for tag, filename in self.overrides.items(): + override_file = os.path.join(self.package_dir, filename) + if not os.path.exists(override_file): + logger.warning( + f"Override file {filename} does not exist in {self.package_dir}" + ) + return False + return True + def update(self, dryrun=False, filters=None): """ Update a container.yaml, meaning the tags and latest. diff --git a/shpc/main/modules/base.py b/shpc/main/modules/base.py index e433d6d45..38044f9ee 100644 --- a/shpc/main/modules/base.py +++ b/shpc/main/modules/base.py @@ -329,6 +329,10 @@ def install( grabbed the name from docker (which is currently the only supported). """ name = self.add_namespace(name) + + # If the module has a version, overrides provided tag + if ":" in name: + name, tag = name.split(":", 1) config = self._load_container(name, tag) # The chosen tag is set for the config (or defaults to latest) @@ -357,6 +361,9 @@ def install( if view is None and not disable_view: view = self.settings.default_view + # We only want to load over-rides for a tag at install time + config.load_override_file(tag.name) + # A view is a symlink under views_base/$view/$module if view: if view not in self.views: @@ -408,11 +415,6 @@ def install( template = self.template.load(self.templatefile) module_path = os.path.join(module_dir, self.modulefile) - # If the module has a version, overrides version - version = tag.name - if ":" in name: - name, version = name.split(":", 1) - # Install the container self.container.install( module_path, @@ -424,7 +426,7 @@ def install( parsed_name=config.name, url=config.url, description=config.description, - version=version, + version=tag.name, config_features=config.features, features=kwargs.get("features"), ) diff --git a/shpc/main/schemas.py b/shpc/main/schemas.py index 996997449..713cd1347 100644 --- a/shpc/main/schemas.py +++ b/shpc/main/schemas.py @@ -58,7 +58,6 @@ }, } - containerConfigProperties = { "latest": keyvals, "docker": {"type": "string"}, @@ -78,6 +77,7 @@ }, "env": keyvals, "features": features, + "overrides": keyvals, "aliases": { "oneOf": [ keyvals, diff --git a/shpc/main/wrappers/__init__.py b/shpc/main/wrappers/__init__.py index 84a6b5d27..e3a9e1cc1 100644 --- a/shpc/main/wrappers/__init__.py +++ b/shpc/main/wrappers/__init__.py @@ -67,7 +67,7 @@ def generate(image, container, config, **kwargs): "podman": config.docker_scripts, } # Additional commands defined in the custom container.yaml script section - listing = scripts.get(container.templatefile, []) + listing = scripts.get(container.templatefile) or {} for alias, template_name in listing.items(): wrapper = WrapperScript(template_name, **constructor_kwargs) # Template wrapper scripts may live alongside container.yaml diff --git a/shpc/tests/test_container_config.py b/shpc/tests/test_container_config.py index d5ad36ae3..03dafd043 100644 --- a/shpc/tests/test_container_config.py +++ b/shpc/tests/test_container_config.py @@ -6,7 +6,9 @@ # Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed # with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +import pytest import os +import jsonschema import shpc.main.container as container @@ -15,7 +17,9 @@ def test_name_parsing(tmp_path): - """Test parsing a config file""" + """ + Test parsing a config file + """ with_registry = os.path.join(here, "testdata", "quay-container.yaml") without_registry = os.path.join(here, "testdata", "python-container.yaml") @@ -36,3 +40,56 @@ def test_name_parsing(tmp_path): assert parsed.tool == "python" assert not parsed.tag assert not parsed.digest + + +def test_overrides(tmp_path): + """ + Test custom override files + """ + alias_container = os.path.join(here, "testdata", "alias-container.yaml") + config = container.ContainerConfig(alias_container) + + # Trying to load over-rides for a tag that doesn't have any should skip + config.load_override_file("3.9.2-slim") + aliases = config.get_aliases() + assert len(aliases) == 1 + assert aliases[0]["name"] == "python" + assert aliases[0]["command"] == "/usr/local/bin/python" + + # Not loading any overrides should provide default in container.yaml + aliases = config.get_aliases() + assert len(aliases) == 1 + assert aliases[0]["name"] == "python" + assert aliases[0]["command"] == "/usr/local/bin/python" + + # Load a known overrides file should work + config.load_override_file("3.10.0a7-alpine") + aliases = config.get_aliases() + assert len(aliases) == 1 + assert aliases[0]["name"] == "python" + assert aliases[0]["command"] == "/alias/path/to/python" + + samtools_container = os.path.join(here, "testdata", "samtools", "container.yaml") + config = container.ContainerConfig(samtools_container) + assert len(config.get_aliases()) == 14 + assert not config.env + + config.load_override_file("1.14--hb421002_0") + assert len(config.get_aliases()) == 27 + assert not config.env + + config = container.ContainerConfig(samtools_container) + config.load_override_file("1.15--h3843a85_0") + assert len(config.get_aliases()) == 14 + assert "REF_PATH" in config.env + assert config.env["REF_PATH"] == "/shared/cram_cache/%2s/%2s/%s" + + +def test_invalid_overrides(tmp_path): + """ + Test custom invalid override files + """ + alias_container = os.path.join(here, "testdata", "alias-container.yaml") + config = container.ContainerConfig(alias_container) + with pytest.raises(jsonschema.exceptions.ValidationError): + config.load_override_file("3.9.4-alpine") diff --git a/shpc/tests/testdata/alias-container.yaml b/shpc/tests/testdata/alias-container.yaml new file mode 100644 index 000000000..e4ac141d7 --- /dev/null +++ b/shpc/tests/testdata/alias-container.yaml @@ -0,0 +1,19 @@ +docker: python +url: https://hub.docker.com/_/python +maintainer: '@vsoch' +description: An interpreted, high-level and general-purpose programming language. +latest: + 3.9.5-alpine: sha256:f189f7366b0d381bf6186b2a2c3d37f143c587e0da2e8dcc21a732bddf4e6f7b +tags: + 3.9.2-alpine: sha256:f046c06388c0721961fe5c9b6184d2f8aeb7eb01b39601babab06cfd975dae01 + 3.9.2-slim: sha256:ce367bb30b8928efb632c369e3bd4a8dbd7905417bd0a245087a82c250e54a24 + 3.9.4-alpine: sha256:419a7502c95b49946fbdd8228b32243597d9e9f191ddfe5468a3b9b3fe64051d + 3.9.5-alpine: sha256:f189f7366b0d381bf6186b2a2c3d37f143c587e0da2e8dcc21a732bddf4e6f7b + 3.10.0a7-alpine: sha256:9b7958e47cd5bd4d092c3b28802493ad1870bce988b2f6ff97f6c81d96fcda80 +filter: +- 3.9.* +overrides: + 3.10.0a7-alpine: overrides.yaml + 3.9.4-alpine: overrides-invalid.yaml +aliases: + python: /usr/local/bin/python diff --git a/shpc/tests/testdata/overrides-invalid.yaml b/shpc/tests/testdata/overrides-invalid.yaml new file mode 100644 index 000000000..a7f7f73a8 --- /dev/null +++ b/shpc/tests/testdata/overrides-invalid.yaml @@ -0,0 +1,3 @@ +aliases: + python: null +notafieldknown: true diff --git a/shpc/tests/testdata/overrides.yaml b/shpc/tests/testdata/overrides.yaml new file mode 100644 index 000000000..4eb67cbcd --- /dev/null +++ b/shpc/tests/testdata/overrides.yaml @@ -0,0 +1,2 @@ +aliases: + python: /alias/path/to/python diff --git a/shpc/tests/testdata/samtools/1.14--hb421002_0.yaml b/shpc/tests/testdata/samtools/1.14--hb421002_0.yaml new file mode 100644 index 000000000..ff715eecb --- /dev/null +++ b/shpc/tests/testdata/samtools/1.14--hb421002_0.yaml @@ -0,0 +1,28 @@ +aliases: + ace2sam: /usr/local/bin/ace2sam + bgzip: /usr/local/bin/bgzip + blast2sam.pl: /usr/local/bin/blast2sam.pl + bowtie2sam.pl: /usr/local/bin/bowtie2sam.pl + export2sam.pl: /usr/local/bin/export2sam.pl + fasta-sanitize.pl: /usr/local/bin/fasta-sanitize.pl + htsfile: /usr/local/bin/htsfile + interpolate_sam.pl: /usr/local/bin/interpolate_sam.pl + libdeflate-gunzip: /usr/local/bin/libdeflate-gunzip + libdeflate-gzip: /usr/local/bin/libdeflate-gzip + maq2sam-long: /usr/local/bin/maq2sam-long + maq2sam-short: /usr/local/bin/maq2sam-short + md5fa: /usr/local/bin/md5fa + md5sum-lite: /usr/local/bin/md5sum-lite + novo2sam.pl: /usr/local/bin/novo2sam.pl + plot-ampliconstats: /usr/local/bin/plot-ampliconstats + plot-bamstats: /usr/local/bin/plot-bamstats + psl2sam.pl: /usr/local/bin/psl2sam.pl + sam2vcf.pl: /usr/local/bin/sam2vcf.pl + samtools: /usr/local/bin/samtools + samtools.pl: /usr/local/bin/samtools.pl + seq_cache_populate.pl: /usr/local/bin/seq_cache_populate.pl + soap2sam.pl: /usr/local/bin/soap2sam.pl + tabix: /usr/local/bin/tabix + wgsim: /usr/local/bin/wgsim + wgsim_eval.pl: /usr/local/bin/wgsim_eval.pl + zoom2sam.pl: /usr/local/bin/zoom2sam.pl diff --git a/shpc/tests/testdata/samtools/1.15--h3843a85_0.yaml b/shpc/tests/testdata/samtools/1.15--h3843a85_0.yaml new file mode 100644 index 000000000..62e703a4b --- /dev/null +++ b/shpc/tests/testdata/samtools/1.15--h3843a85_0.yaml @@ -0,0 +1,2 @@ +env: + REF_PATH: /shared/cram_cache/%2s/%2s/%s diff --git a/shpc/tests/testdata/samtools/container.yaml b/shpc/tests/testdata/samtools/container.yaml new file mode 100644 index 000000000..d93609f62 --- /dev/null +++ b/shpc/tests/testdata/samtools/container.yaml @@ -0,0 +1,31 @@ +docker: quay.io/biocontainers/samtools +url: https://quay.io/repository/biocontainers/samtools +maintainer: '@audreystott' +description: Tools for reading/writing/editing/indexing/viewing SAM/BAM/CRAM format. +latest: + 1.15--h3843a85_0: sha256:d68e1b5f504dc60eb9f2a02eecbac44a63f144e7d455b3fb1a25323c667ca4c4 +tags: + 1.10--h2e538c0_3: sha256:84a8d0c0acec87448a47cefa60c4f4a545887239fcd7984a58b48e7a6ac86390 + 1.11--h6270b1f_0: sha256:141120f19f849b79e05ae2fac981383988445c373b8b5db7f3dd221179af382b + 1.12--h9aed4be_1: sha256:5fd5f0937adf8a24b5bf7655110e501df78ae51588547c8617f17c3291a723e1 + 1.13--h8c37831_0: sha256:04da5297386dfae2458a93613a8c60216d158ee7cb9f96188dad71c1952f7f72 + 1.14--hb421002_0: sha256:88632c41eba8b94b7a2a1013f422aecf478a0cb278740bcc3a38058c903d61ad + 1.15--h3843a85_0: sha256:d68e1b5f504dc60eb9f2a02eecbac44a63f144e7d455b3fb1a25323c667ca4c4 +overrides: + 1.14--hb421002_0: 1.14--hb421002_0.yaml + 1.15--h3843a85_0: 1.15--h3843a85_0.yaml +aliases: + ace2sam: /usr/local/bin/ace2sam + bgzip: /usr/local/bin/bgzip + htsfile: /usr/local/bin/htsfile + libdeflate-gunzip: /usr/local/bin/libdeflate-gunzip + libdeflate-gzip: /usr/local/bin/libdeflate-gzip + maq2sam-long: /usr/local/bin/maq2sam-long + maq2sam-short: /usr/local/bin/maq2sam-short + md5fa: /usr/local/bin/md5fa + md5sum-lite: /usr/local/bin/md5sum-lite + plot-ampliconstats: /usr/local/bin/plot-ampliconstats + plot-bamstats: /usr/local/bin/plot-bamstats + samtools: /usr/local/bin/samtools + tabix: /usr/local/bin/tabix + wgsim: /usr/local/bin/wgsim diff --git a/shpc/version.py b/shpc/version.py index 02753860f..bc271ba95 100644 --- a/shpc/version.py +++ b/shpc/version.py @@ -2,7 +2,7 @@ __copyright__ = "Copyright 2021-2022, Vanessa Sochat" __license__ = "MPL 2.0" -__version__ = "0.0.55" +__version__ = "0.0.56" AUTHOR = "Vanessa Sochat" NAME = "singularity-hpc" PACKAGE_URL = "https://github.com/singularityhub/singularity-hpc"