Expand description
External API clients (GitLab, Jira, SiServer, kasl-server) and the shared session-management pattern most of them implement.
kasl_server is the exception: it authenticates with a token an
administrator issues, so it has no session to manage and does not
implement Session.
use kasl::api::{GitLabConfig, JiraConfig, SiConfig};
let jira_module = JiraConfig::module();
let jira_config = JiraConfig::init(&existing_config)?;Re-exports§
pub use gitlab::GitLabConfig;pub use jira::JiraConfig;pub use si::SiConfig;
Modules§
- gitlab
- GitLab API client for fetching user activity and commit data.
- jira
- Jira client: completed issues for task discovery, assigned open issues for the inbox poller.
- kasl_
server - kasl-server client: the team server this agent reports to.
- si
- SiServer client: daily/monthly report submission and the company rest-date calendar.
Traits§
- Session
- Session lifecycle shared by every API client: cache the session id on disk, prompt for the password only when needed, retry a bounded number of times.