Current section
Files
Jump to
Current section
Files
src/kuberl_example_watch.erl
-module(kuberl_example_watch).
-behaviour(kuberl_watch).
-export([example/0,
init/1,
handle_event/3,
terminate/2]).
example() ->
kuberl_watch:start_link(?MODULE, kuberl_core_v1_api, list_pod_for_all_namespaces, [ctx:background()], #{}, []).
init([]) ->
{ok, []}.
handle_event(added, #{metadata := #{name := Name}}, State) ->
io:format("Added : ~p~n", [Name]),
{ok, State};
handle_event(deleted, #{metadata := #{name := Name}}, State) ->
io:format("Deleted : ~p~n", [Name]),
{ok, State};
handle_event(modified, #{metadata := #{name := Name}}, State) ->
io:format("Modified : ~p~n", [Name]),
{ok, State};
handle_event(error, #{message := Message}, State) ->
io:format("Error : ~p~n", [Message]),
{ok, State}.
terminate(Reason, _State) ->
io:format("Terminating : ~p~n", [Reason]),
ok.