* first pass of CLI ifc converter
* some updates
* closer
* yarn works
* can execute ifc?
* change exe
* remove extra venv needs
* invocation works
* fixed dockerfile and url
* refactor(fileimport): temp results path should not be hardcoded in parsers
* update importer to output stuff
* fix up argments
* remove dead code
* adjust dockerfile to have tini and workdir better
* fix node to a specific version
* Add shell statement and pin yarn version
* add ifc converter c# to ignore
* merge fix
* move ifc c#
* fix the api usage
* update the importer to new SDK
* Adds a feature flag `FF_FILEIMPORT_IFC_DOTNET_ENABLED` for enabling .Net IFC parser
* move directories
* put back ifc js
* use FF and reversions
* needs token too
* fix docker?
* one last copy fix
* adjust prettier ignore
* change to enable
* fix helm chart nesting
* Amend healthcheck node binary path
* Add FF_FILEIMPORT_IFC_DOTNET_ENABLED to feature flag parser
* Allow app to write to /.config directory
* fix: volume name has to be lower case
* update ifc importing
---------
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
Co-authored-by: root <root@Clynelish>
* chore(Dockerfile): pin images by digest this ensures consistent builds with images pinned by SHA
* introduces a GitHub Action will create a PR to update the images when there is a new version, and will pin to that newer version SHA.
* Bump debian to 12 'bookworm'
* Bump pypi libraries
* except frontend-1, as only debian 11 is currently supported by openresty
* Bump debian packages
* Moves speckle-server, webhook-service, fileimport-service, monitoring-deployment, and test-deployment images to Distroless.
Partially addresses https://github.com/specklesystems/speckle-server/issues/883
* preview-service uses similar image for building and production stages
* explicitly include chromium-common dependency to prevent error in preview service
* Bump chromium packages due to package versions not being found
* Handle machine-id in distroless
- distroless has no shell, so node-machine-id will result in an error
- this commit introduces error handling and defaults to a uuid v4 in the case of an error
* Update binary location for readiness and liveness checks to match the binary location in Distroless
* Allow node binary path to be set as environment variable in fileimport service
* chore(node): upgrades to node 18
Node 16 was out of support (but not security upgrades), so bumping to next stable version.
https://github.com/specklesystems/speckle-server/issues/1187
* Update server liveness and readiness probes for node 18
* Bump web-ifc to 0.0.36
* Apply `--no-experimental-fetch` flag to fileimport-service to prevent issues in web-ifc (via emscripten) with node 18