Skip to content

Commit

Permalink
Merge pull request #136 from makr11st/feature/docs_bare
Browse files Browse the repository at this point in the history
Simplified Docs Deployment
  • Loading branch information
makr11st authored Sep 11, 2024
2 parents 06f7fe4 + f8bbe17 commit f0c9ed2
Show file tree
Hide file tree
Showing 97 changed files with 25,806 additions and 32 deletions.
9 changes: 5 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
/target/
**/*.rs.bk
Cargo.lock
/specs
.env
**/*.rs.bk
**latest**
/docs/book
/specs
/target/
Cargo.lock
swagger**
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [0.4.0] - 2024-08-27

### Added

- Docs: Added initial documentation drop

### Changed

- Update Rusty Falcon to use the latest OpenAPI spec
Expand Down
10 changes: 5 additions & 5 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,12 @@ All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the reporter of any incident.

If you do not feel safe communicating with the project maintainers, or if you feel the situation warrants,
If you do not feel safe communicating with the project maintainers, or if you feel the situation warrants,
please escalate to:

Shawn Wells<BR/>
Global Vice President, Solution Architecture<BR/>
[email protected]
<[email protected]>

## Enforcement Guidelines

Expand Down Expand Up @@ -123,13 +123,13 @@ the community.

This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
<https://www.contributor-covenant.org/version/2/0/code_of_conduct.html>.

Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.
<https://www.contributor-covenant.org/faq>. Translations are available at
<https://www.contributor-covenant.org/translations>.
46 changes: 29 additions & 17 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,61 +1,73 @@
# Contributing to this repository <!-- omit in toc -->

## Getting started <!-- omit in toc -->

_Welcome!_ We're excited you want to take part in the rusty-falcon community!

Please review this document for details regarding getting started with your first contribution, packages you'll need to install as a developer, and our Pull Request process. If you have any questions, please let us know by
posting your question as an [issue](https://github.com/CrowdStrike/rusty-falcon/issues/new).

### Before you begin

- Have you read the [Code of Conduct](CODE_OF_CONDUCT.md)? The Code of Conduct helps us establish community norms and how they'll be enforced.

### Table of Contents

- [How you can contribute](#how-you-can-contribute)
+ [Bug reporting](#bug-reporting-and-questions-are-handled-using-githubs-issues)
- [Bug reporting](#bug-reporting-and-questions-are-handled-using-githubs-issues)
- [Pull Requests](#pull-requests)
+ [Contributor dependencies](#additional-contributor-package-requirements)
+ [Unit testing](#unit-testing--code-coverage)
+ [Linting](#linting)
+ [Breaking changes](#breaking-changes)
+ [Branch targeting](#branch-targeting)
- [Contributor dependencies](#additional-contributor-package-requirements)
- [Unit testing](#unit-testing--code-coverage)
- [Linting](#linting)
- [Breaking changes](#breaking-changes)
- [Branch targeting](#branch-targeting)
- [Suggestions](#suggestions)

## How you can contribute

- See something? Say something! Submit a [bug report](https://github.com/CrowdStrike/rusty-falcon/issues) to let the community know what you've experienced or found. Bonus points if you suggest possible fixes or what you feel may resolve the issue. For example: "_Attempted to use the XZY API class but it errored out. Could a more descriptive error code be returned?_"
- Submit a [Pull Request](#pull-requests)

### Bug reporting and questions are handled using GitHub's issues

We use GitHub issues to track bugs. Report a bug by opening a [new issue](https://github.com/CrowdStrike/rusty-falcon/issues).

## Pull Requests

### All contributions will be submitted under the Unlicense license
When you submit code changes, your submissions are understood to be under the same Unlicense [license](LICENSE) that covers the project.

When you submit code changes, your submissions are understood to be under the same Unlicense [license](LICENSE) that covers the project.
If this is a concern, contact the maintainers before contributing.

### Breaking changes
In an effort to maintain backwards compatibility, we thoroughly unit test every Pull Request for all versions of Python we support. These unit tests are intended to catch general programmatic errors, possible vulnerabilities (via bandit) and _potential breaking changes_.

In an effort to maintain backwards compatibility, we thoroughly unit test every Pull Request for all versions of Python we support. These unit tests are intended to catch general programmatic errors, possible vulnerabilities (via bandit) and _potential breaking changes_.

> If you have to adjust a unit test locally in order to produce passing results, there is a possibility you are working with a potential breaking change.
Please fully document changes to unit tests within your Pull Request. If you did not specify "Breaking Change" on the punch list in the description, and the change is identified as possibly breaking, this may delay or prevent approval of your PR.

### Versioning
We use [SemVer](https://semver.org/) as our versioning scheme. (Example: _2.1.4_)

We use [SemVer](https://semver.org/) as our versioning scheme. (Example: _2.1.4_)

### Pull Request template

Please use the pull request template provided, making sure the following details are included in your request:
+ Is this a breaking change?
+ Are all new or changed code paths covered by unit testing?
+ A complete listing of issues addressed or closed with this change.
+ A complete listing of any enhancements provided by this change.
+ Any usage details developers may need to make use of this new functionality.
- Does additional documentation need to be developed beyond what is listed in your Pull Request?
+ Any other salient points of interest.

- Is this a breaking change?
- Are all new or changed code paths covered by unit testing?
- A complete listing of issues addressed or closed with this change.
- A complete listing of any enhancements provided by this change.
- Any usage details developers may need to make use of this new functionality.
- Does additional documentation need to be developed beyond what is listed in your Pull Request?
- Any other salient points of interest.

### Approval / Merging
All Pull Requests must be approved by at least one maintainer. Once approved, a maintainer will perform the merge and execute any backend

All Pull Requests must be approved by at least one maintainer. Once approved, a maintainer will perform the merge and execute any backend
processes related to package deployment. At this time, contributors _do not_ have the ability to merge to the `main` branch.

## Suggestions

If you have suggestions on how this process could be improved, please let us know by [posting an issue](https://github.com/CrowdStrike/rusty-falcon/issues).
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,16 @@ async fn main() {

Ready-made examples can be found in [git repo](https://github.com/CrowdStrike/rusty-falcon/tree/main/examples).

# [WIP] Project Documentation

This project uses `mdbook` to serve its documentation, to run it locally:

```bash
cd docs
mdbook build
mdbook serve
```

# Generating models from OpenApi Specification

This api model is generated from OpenApi specification using [OpenApi Generator](https://openapi-generator.tech/docs/installation/) for Rust language.
Expand Down
17 changes: 11 additions & 6 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,39 @@
# Security Policy

This document outlines security policy and procedures for the CrowdStrike `rusty-falcon` project.

+ [Supported rusty-falcon versions](#supported-rusty-falcon-versions)
+ [Reporting a potential security vulnerability](#reporting-a-potential-security-vulnerability)
+ [Disclosure and Mitigation Process](#disclosure-and-mitigation-process)

## Supported rusty-falcon versions

When discovered, we release security vulnerability patches for the most recent release at an accelerated cadence.
When discovered, we release security vulnerability patches for the most recent release at an accelerated cadence.

## Reporting a potential security vulnerability

We have multiple avenues to receive security-related vulnerability reports.

Please report suspected security vulnerabilities by:

+ Submitting a [bug](https://github.com/CrowdStrike/rusty-falcon/issues)
+ Submitting a [pull request](https://github.com/CrowdStrike/rusty-falcon/pulls) to potentially resolve the issue
+ Sending an email to __simon.lukasik [at] crowdstrike.com__.
+ Sending an email to rusty-falcon __rusty-falcon@crowdstrike.com__.

## Disclosure and mitigation process

Upon receiving a security bug report, the issue will be assigned to one of the project maintainers. This person will coordinate the related fix and release
process, involving the following steps:

+ Communicate with you to confirm we have received the report and provide you with a status update.
- You should receive this message within 48 - 72 business hours.
+ You should receive this message within 48 - 72 business hours.
+ Confirmation of the issue and a determination of affected versions.
+ An audit of the codebase to find any potentially similar problems.
+ Preparation of patches for all releases still under maintenance.
- These patches will be submitted as a separate pull request and contain a version update.
- This pull request will be flagged as a security fix.
- Once merged, and after post-merge unit testing has been completed, the patch will be immediately published.
+ These patches will be submitted as a separate pull request and contain a version update.
+ This pull request will be flagged as a security fix.
+ Once merged, and after post-merge unit testing has been completed, the patch will be immediately published.

## Comments

If you have suggestions on how this process could be improved, please let us know by [creating an issue](https://github.com/CrowdStrike/rusty-falcon/issues).
19 changes: 19 additions & 0 deletions docs/book.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
[book]
title = "`rusty-falcon` Documentation"
language = "en"
multilingual = false
src = "src"

[build]
create-missing = true
use-default-preprocessors = false

[preprocessor.links]

[output.html]
git-repository-url = "https://github.com/CrowdStrike/rusty-falcon"
no-section-label = true
fold = { enable = true }

[rust]
edition = "2021"
29 changes: 29 additions & 0 deletions docs/src/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# Rust client for Falcon API - rusty-falcon

Use this API specification as a reference for the API endpoints you can use to interact with your Falcon environment. These endpoints support authentication via OAuth2 and interact with detections and network containment. For detailed usage guides and examples, see our [documentation inside the Falcon console](https://falcon.crowdstrike.com/support/documentation).

To use the APIs described below, combine the base URL with the path shown for each API endpoint. For commercial cloud customers, your base URL is `https://api.crowdstrike.com`.

Each API endpoint requires authorization via an OAuth2 token. Your first API request should retrieve an OAuth2 token using the `oauth2/token` endpoint, such as `https://api.crowdstrike.com/oauth2/token`. For subsequent requests, include the OAuth2 token in an HTTP authorization header. Tokens expire after 30 minutes, after which you should make a new token request to continue making API requests.

## Overview

This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client.

- API version: rolling
- Package version: rolling
- Build package: `org.openapitools.codegen.languages.RustClientCodegen`

## Installation

WIP

## Local docs

To get access to the crate's generated documentation, use:

```bash
cargo doc --open
```

## Author
74 changes: 74 additions & 0 deletions docs/src/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# Summary

[Entry](README.md)

---

- [API Reference](./docs/README.md)
- [Alerts](./docs/AlertsApi.md)
- [Cloud Connect Aws](./docs/CloudConnectAwsApi.md)
- [Configuration Assessment](./docs/ConfigurationAssessmentApi.md)
- [Configuration Assessment Evaluation Logic](./docs/ConfigurationAssessmentEvaluationLogicApi.md)
- [Cspm Registration](./docs/CspmRegistrationApi.md)
- [Custom Ioa](./docs/CustomIoaApi.md)
- [D4c Registration](./docs/D4cRegistrationApi.md)
- [Detects](./docs/DetectsApi.md)
- [Device Control Policies](./docs/DeviceControlPoliciesApi.md)
- [Discover](./docs/DiscoverApi.md)
- [Discover Iot](./docs/DiscoverIotApi.md)
- [Event Schema](./docs/EventSchemaApi.md)
- [Event Streams](./docs/EventStreamsApi.md)
- [Falcon Complete Dashboard](./docs/FalconCompleteDashboardApi.md)
- [Falcon Container](./docs/FalconContainerApi.md)
- [Falcon Container CLI](./docs/FalconContainerCliApi.md)
- [Falcon Containe Image](./docs/FalconContainerImageApi.md)
- [Falconx Sandbox](./docs/FalconxSandboxApi.md)
- [Field Schema](./docs/FieldSchemaApi.md)
- [Filevantage](./docs/FilevantageApi.md)
- [Firewall Management](./docs/FirewallManagementApi.md)
- [Firewall Policies](./docs/FirewallPoliciesApi.md)
- [Host Group](./docs/HostGroupApi.md)
- [Hosts](./docs/HostsApi.md)
- [Identity Entities](./docs/IdentityEntitiesApi.md)
- [Identity Protection](./docs/IdentityProtectionApi.md)
- [Incidents](./docs/IncidentsApi.md)
- [Installation Tokens](./docs/InstallationTokensApi.md)
- [Installation Tokens Settings](./docs/InstallationTokensSettingsApi.md)
- [Intel](./docs/IntelApi.md)
- [Inventories](./docs/InventoriesApi.md)
- [Ioa Exclusions](./docs/IoaExclusionsApi.md)
- [Ioc](./docs/IocApi.md)
- [Iocs](./docs/IocsApi.md)
- [Kubernetes Protection](./docs/KubernetesProtectionApi.md)
- [Malquery](./docs/MalqueryApi.md)
- [Message Center](./docs/MessageCenterApi.md)
- [ML Exclusions](./docs/MlExclusionsApi.md)
- [Mobile Enrollment](./docs/MobileEnrollmentApi.md)
- [Mssp](./docs/MsspApi.md)
- [Oauth2](./docs/Oauth2Api.md)
- [Ods](./docs/OdsApi.md)
- [Overwatch Dashboard](./docs/OverwatchDashboardApi.md)
- [Prevention Policies](./docs/PreventionPoliciesApi.md)
- [Provision](./docs/ProvisionApi.md)
- [Quarantine](./docs/QuarantineApi.md)
- [QuickScan](./docs/QuickScanApi.md)
- [Real TimeResponse Admin](./docs/RealTimeResponseAdminApi.md)
- [Real TimeResponse](./docs/RealTimeResponseApi.md)
- [Recon](./docs/ReconApi.md)
- [Registration](./docs/RegistrationApi.md)
- [Report Executions](./docs/ReportExecutionsApi.md)
- [Response Policies](./docs/ResponsePoliciesApi.md)
- [Sample Uploads](./docs/SampleUploadsApi.md)
- [Scheduled Reports](./docs/ScheduledReportsApi.md)
- [Sensor Download](./docs/SensorDownloadApi.md)
- [Sensor Update Policies](./docs/SensorUpdatePoliciesApi.md)
- [Sensor Visibility Exclusions](./docs/SensorVisibilityExclusionsApi.md)
- [Spotlight Evaluation Logic](./docs/SpotlightEvaluationLogicApi.md)
- [Spotlight Vulnerabilities](./docs/SpotlightVulnerabilitiesApi.md)
- [Tailored Intelligence](./docs/TailoredIntelligenceApi.md)
- [User Management](./docs/UserManagementApi.md)
- [Zero Trust Assessment](./docs/ZeroTrustAssessmentApi.md)

---

- [API Models]()
5 changes: 5 additions & 0 deletions docs/src/docs/.markdownlint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"MD013": false,
"MD024": false,
"MD033": false
}
Loading

0 comments on commit f0c9ed2

Please sign in to comment.