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

Developer guide for plugins #225

Closed
RichardoC opened this issue Jan 30, 2023 · 20 comments
Closed

Developer guide for plugins #225

RichardoC opened this issue Jan 30, 2023 · 20 comments
Assignees
Labels
help wanted Extra attention is needed kind/documentation Improvements or additions to documentation lifecycle/rotten

Comments

@RichardoC
Copy link
Contributor

Is there a guide to getting started with building/testing the plugins, and how to add a new one?

An example from the Kubernetes project

Thanks!

@RichardoC RichardoC added the kind/documentation Improvements or additions to documentation label Jan 30, 2023
@Issif
Copy link
Member

Issif commented Feb 1, 2023

Hi,
You can read our blog post which describes how to write a plugin. https://falco.org/blog/extend-falco-inputs-with-a-plugin-the-basics/

We'll trying to adapt it as a tutorial in the docs for future.

@RichardoC
Copy link
Contributor Author

RichardoC commented Feb 1, 2023

Thank you, I was attempting to follow that guide but ran in to issues where the libc on my machine doesn't match the version included in the falco container image I was running. Perhaps we could update this guide to use the same container image used to build the falco images to prevent this sort of issue?

My current (bad) approach has been to do the following (or building an image based on falco), to avoid this issue

nerdctl run --rm -it -v$(pwd):/example:rw  --entrypoint="/bin/bash" falcosecurity/falco -c 'apt update ; apt --fix-broken install -y ; apt install -y wget && wget https://go.dev/dl/go1.19.5.linux-amd64.tar.gz && tar -C /usr/local -xzf go1.19.5.linux-amd64.tar.gz && export PATH=$PATH:/usr/local/go/bin && cd /example && make clean && make && /usr/bin/falco -u  -c /example/examples/running-locally/falco.yaml  -r /example/examples/running-locally/falco_rules.yaml  --list-plugins'

Thanks!

@leogr
Copy link
Member

leogr commented Mar 19, 2023

cc @jasondellaluce

@jasondellaluce jasondellaluce self-assigned this Mar 20, 2023
@poiana
Copy link
Contributor

poiana commented Jun 24, 2023

Issues go stale after 90d of inactivity.

Mark the issue as fresh with /remove-lifecycle stale.

Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Provide feedback via https://github.com/falcosecurity/community.

/lifecycle stale

@RichardoC
Copy link
Contributor Author

/remove-lifecycle stale

@poiana
Copy link
Contributor

poiana commented Sep 24, 2023

Issues go stale after 90d of inactivity.

Mark the issue as fresh with /remove-lifecycle stale.

Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Provide feedback via https://github.com/falcosecurity/community.

/lifecycle stale

@leogr
Copy link
Member

leogr commented Sep 25, 2023

/remove-lifecycle stale

In the last months, our documentation has been revised and extended. I guess most of what the developers need is described at https://falco.org/docs/plugins/developers-guide/.

Do you think anything still needs to be added? 🤔

@Issif
Copy link
Member

Issif commented Sep 25, 2023

I'm ok for closing this issue.

@poiana
Copy link
Contributor

poiana commented Dec 24, 2023

Issues go stale after 90d of inactivity.

Mark the issue as fresh with /remove-lifecycle stale.

Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Provide feedback via https://github.com/falcosecurity/community.

/lifecycle stale

@RichardoC
Copy link
Contributor Author

It's still missing build details like which glibc to target, which go versions to use and other toolchain like things
Instead of documenting it, it could be as simple as providing a container which can be used to generate compatible plugins?
My approach to this can be seen in the command in #225 (comment)

@leogr
Copy link
Member

leogr commented Jan 9, 2024

It's still missing build details like which glibc to target, which go versions to use and other toolchain like things

cc @LucaGuerra

@leogr
Copy link
Member

leogr commented Jan 9, 2024

/remove-lifecycle stale

@poiana
Copy link
Contributor

poiana commented Apr 8, 2024

Issues go stale after 90d of inactivity.

Mark the issue as fresh with /remove-lifecycle stale.

Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Provide feedback via https://github.com/falcosecurity/community.

/lifecycle stale

@leogr
Copy link
Member

leogr commented Apr 8, 2024

/remove-lifecycle stale
/help

@poiana
Copy link
Contributor

poiana commented Apr 8, 2024

@leogr:
This request has been marked as needing help from a contributor.

Please ensure the request meets the requirements listed here.

If this request no longer meets these requirements, the label can be removed
by commenting with the /remove-help command.

In response to this:

/remove-lifecycle stale
/help

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@poiana poiana added help wanted Extra attention is needed and removed lifecycle/stale labels Apr 8, 2024
@leogr
Copy link
Member

leogr commented Apr 8, 2024

/assign

@poiana
Copy link
Contributor

poiana commented Jul 7, 2024

Issues go stale after 90d of inactivity.

Mark the issue as fresh with /remove-lifecycle stale.

Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Provide feedback via https://github.com/falcosecurity/community.

/lifecycle stale

@poiana
Copy link
Contributor

poiana commented Aug 6, 2024

Stale issues rot after 30d of inactivity.

Mark the issue as fresh with /remove-lifecycle rotten.

Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

Provide feedback via https://github.com/falcosecurity/community.

/lifecycle rotten

@poiana
Copy link
Contributor

poiana commented Sep 5, 2024

Rotten issues close after 30d of inactivity.

Reopen the issue with /reopen.

Mark the issue as fresh with /remove-lifecycle rotten.

Provide feedback via https://github.com/falcosecurity/community.
/close

@poiana poiana closed this as completed Sep 5, 2024
@poiana
Copy link
Contributor

poiana commented Sep 5, 2024

@poiana: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue with /reopen.

Mark the issue as fresh with /remove-lifecycle rotten.

Provide feedback via https://github.com/falcosecurity/community.
/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed kind/documentation Improvements or additions to documentation lifecycle/rotten
Projects
None yet
Development

No branches or pull requests

5 participants