Skip to content
Open
12 changes: 12 additions & 0 deletions .github/workflows/cpplinter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: cpplint
on:
pull_request:
branches: ["main", "ci-pipeline"]
jobs:
cpplint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-python@v1
- run: pip install cpplint
- run: cpplint --recursive .
18 changes: 18 additions & 0 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Docker Image CI-CD

on:
push:
branches: [ "main", "ci-pipeline" ]
pull_request:
branches: [ "main", "ci-pipeline" ]

jobs:

build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Build the Docker image
run: docker build . --file Dockerfile --tag my-image-name:$(date +%s)
2 changes: 1 addition & 1 deletion GameDie.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ GameDie::GameDie(unsigned int num) {
// generate a random number between 1-n where n is the counter size
// (inclusive) and return it
int GameDie::roll() {
int roll = rand_r() % roll_counter.size();
int roll = rand() % roll_counter.size();
roll_counter[roll]++;
return roll + 1;
}
Expand Down
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
[![Docker Image CI-CD](https://github.com/prestonmasseyblake/Roller/actions/workflows/docker-image.yml/badge.svg)](https://github.com/prestonmasseyblake/Roller/actions/workflows/docker-image.yml)

# Roller

This repository provides a program that rolls a game die, such as the
Expand Down Expand Up @@ -41,3 +43,6 @@ To check for your program's adoption of the style guide, within the docker
container (see above), run **cpplint**:

`cpplint *.cpp *.h`



Binary file added Roller
Binary file not shown.
5 changes: 2 additions & 3 deletions main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,15 @@ using std::cout;
using std::endl;

int main(int argc, char *argv[]) {
if ( argc != 2 || std::atoi(argv[1]) < 1 ){
if ( argc != 2 || std::atoi(argv[1]) < 1 ) {
cout << "Incorrect command.\n"
<< "Format: ./Roller <n>\n"
<< "--------------------\n"
<< "Arguments\n"
<< "--------------------\n"
<< "<n> - Required; a number 1 or greater representing the number\n"
<< " of faces on the die being rolled\n";
}
else {
} else {
int faces = std::atoi(argv[1]);
GameDie die(faces);
cout << die.roll() << endl;
Expand Down