An open API service indexing awesome lists of open source software.

https://github.com/openscap/openscap_parser


https://github.com/openscap/openscap_parser

Last synced: about 2 months ago
JSON representation

Awesome Lists containing this project

README

        

# OpenscapParser

Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/openscap_parser`. To experiment with that code, run `bin/console` for an interactive prompt.

## Installation

Add this line to your application's Gemfile:

```ruby
gem 'openscap_parser'
```

And then execute:

$ bundle

Or install it yourself as:

$ gem install openscap_parser

## Usage

ARF/XCCDF report goes IN - Ruby hash goes OUT

```rb
parser = OpenscapParser::Base.new(File.read('rhel7-xccdf_org.ssgproject.content_profile_standard.xml'))
parser.host # "rhel7-insights-client.virbr0.akofink-laptop"
parser.start_time #
parser.end_time #
parser.score # 80.833328
parser.profiles # {"xccdf_org.ssgproject.content_profile_standard"=>"Standard System Security Profile for Red Hat Enterprise Linux 7"}
parser.rules # [#, ...]
parser.rule_results # [#, ...]

# and more!
```

### Fetching SCAP Security Guide Content

This gem includes a rake task to sync content from the [ComplianceAsCode project](https://github.com/ComplianceAsCode/content). The following examples show how to download and exract datastream files from the released versions:

```sh
rake ssg:sync DATASTREAMS=latest:fedora # fetch and extract the latest fedora datastream
rake ssg:sync DATASTREAMS=v0.1.45:fedora,v0.1.45:firefox # fetch and extract tag v0.1.45 for fedora and firefox datastreams
rake ssg:sync_rhel # fetch and extract the latest released versions of the RHEL 6, 7, and 8 datastreams
```

An SSG version will be downloaded only once, even if it is specified multiple times for multiple datastreams.

## Development

After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/elobato/openscap_parser. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.

## License

The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).

## Code of Conduct

Everyone interacting in the OpenscapParser project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/elobato/openscap_parser/blob/master/CODE_OF_CONDUCT.md).