Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

feat: build incoming services #220

Merged
merged 13 commits into from
Jun 27, 2022
Merged

feat: build incoming services #220

merged 13 commits into from
Jun 27, 2022

Conversation

bmoxb
Copy link
Contributor

@bmoxb bmoxb commented Jun 21, 2022

Building of incoming services

  • Un-archive and build Cargo projects coming in
  • Create marker files in preparation of loading
  • Delete old build if any
  • Unit testing

Marker Files

The work around that C came up with to avoid the fact that linked libraries were not being properly reloaded was to give each new .so file a random name and then use a well-known 'marker file' to indicate the name of the linked library .so file.

Looking at the code of libloading (dependency that handles .so loading for us), the dlopen is likely the cause of the issue. The man pages state:

The cache file /etc/ld.so.cache (maintained by ldconfig(8)) is checked to see whether it contains an entry for filename.

I'm trying to figure out an a way of either not add a library to the cache or otherwise ignore it.

Notes

  • Possibility of (minor) merge collisions based on changes to error module.
  • Introduces new dependencies for un-archiving .tar.gz data (flate2 and tar) and for creating random .so file names (rand).

Sorry, something went wrong.

bmoxb added 7 commits June 21, 2022 20:22

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem
…t test

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem
…ctions with unit tests

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem
@nodard
Copy link
Contributor

nodard commented Jun 23, 2022

Task linked: CU-2h84xfe Building of incoming services

@bmoxb bmoxb marked this pull request as ready for review June 23, 2022 10:14
bmoxb added 3 commits June 23, 2022 11:16

Verified

This commit was signed with the committer’s verified signature.
oddgrd Oddbjørn Grødem

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Copy link
Contributor

@chesedo chesedo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, getting one step closer 😄

bmoxb and others added 2 commits June 27, 2022 18:16
Co-authored-by: Pieter <pieter@chesedo.me>
@bmoxb
Copy link
Contributor Author

bmoxb commented Jun 27, 2022

Many thanks, @chesedo !

@bmoxb bmoxb merged commit 9e98cea into shuttle-hq:feat/deployer Jun 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants