Skip to content

Commit

Permalink
Merge pull request #16 from davewalker5/DFL-23-Empty-Database-UI-Error
Browse files Browse the repository at this point in the history
Dfl 23 empty database UI error
  • Loading branch information
davewalker5 authored Mar 8, 2024
2 parents 00b07e2 + 832d62a commit 4b107f3
Show file tree
Hide file tree
Showing 306 changed files with 232,658 additions and 232,616 deletions.
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1 @@
*.js linguist-detectable=false
*.js linguist-detectable=false
48 changes: 24 additions & 24 deletions .github/workflows/dotnetcore.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
name: .NET Core CI Build

on: [push]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: "8.0.101"
include-prerelease: true
- name: Build
run: dotnet build --configuration Release src/DroneFlightLog.sln
- name: Run unit tests and generate code coverage
run: dotnet test src/DroneFlightLog.sln /p:CollectCoverage=true /p:CoverletOutput=coverage/ /p:CoverletOutputFormat=lcov
- name: Generage Coveralls code coverage
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: src/DroneFlightLog.Data.Tests/coverage/coverage.info
name: .NET Core CI Build

on: [push]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v1
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: "8.0.101"
include-prerelease: true
- name: Build
run: dotnet build --configuration Release src/DroneFlightLog.sln
- name: Run unit tests and generate code coverage
run: dotnet test src/DroneFlightLog.sln /p:CollectCoverage=true /p:CoverletOutput=coverage/ /p:CoverletOutputFormat=lcov
- name: Generage Coveralls code coverage
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: src/DroneFlightLog.Data.Tests/coverage/coverage.info
42 changes: 21 additions & 21 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
MIT License

Copyright (c) 2020 Dave Walker

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
MIT License
Copyright (c) 2020 Dave Walker
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
94 changes: 47 additions & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
# DroneFlightLog

[![Build Status](https://github.com/davewalker5/DroneFlightLog/workflows/.NET%20Core%20CI%20Build/badge.svg)](https://github.com/davewalker5/DroneFlightLog/actions)
[![GitHub issues](https://img.shields.io/github/issues/davewalker5/DroneFlightLog)](https://github.com/davewalker5/DroneFlightLog/issues)
[![Coverage Status](https://coveralls.io/repos/github/davewalker5/DroneFlightLog/badge.svg?branch=master)](https://coveralls.io/github/davewalker5/DroneFlightLog?branch=master)
[![Releases](https://img.shields.io/github/v/release/davewalker5/DroneFlightLog.svg?include_prereleases)](https://github.com/davewalker5/DroneFlightLog/releases)
[![NuGet](https://img.shields.io/nuget/v/DroneFlightLog.Data)](https://www.nuget.org/packages?q=droneflightlog.data)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/davewalker5/DroneFlightLog/blob/master/LICENSE)
[![Language](https://img.shields.io/badge/language-c%23-blue.svg)](https://github.com/davewalker5/DroneFlightLog/)
[![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/davewalker5/DroneFlightLog)](https://github.com/davewalker5/DroneFlightLog/)

## About

DroneFlightLog implements a SQL-based drone flight log boook. An ASP.NET WebAPI provides access to the business logic and data access layer while an ASP.NET MVC UI provides the user interface.

The logbook allows for storage and maintenance of the following data:

- Operator details
- Drones, models and manufacturers
- Flights, flight locations and flight properties

## Getting Started

Please see the [Wiki](https://github.com/davewalker5/DroneFlightLog/wiki) for configuration details and the user guide.

## Authors

- **Dave Walker** - _Initial work_ - [LinkedIn](https://www.linkedin.com/in/davewalker5/)

## Credits

Implementation of authentication using JWT in the REST API is based on the following tutorial:

- https://github.com/cornflourblue/aspnet-core-3-jwt-authentication-api
- https://jasonwatmore.com/post/2019/10/11/aspnet-core-3-jwt-authentication-tutorial-with-example-api#users-controller-cs

The Drone Flight Log MVC project uses the Gijgo JavaScript controls library:

- https://gijgo.com

## Feedback

To file issues or suggestions, please use the [Issues](https://github.com/davewalker5/DroneFlightLog/issues) page for this project on GitHub.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
# DroneFlightLog

[![Build Status](https://github.com/davewalker5/DroneFlightLog/workflows/.NET%20Core%20CI%20Build/badge.svg)](https://github.com/davewalker5/DroneFlightLog/actions)
[![GitHub issues](https://img.shields.io/github/issues/davewalker5/DroneFlightLog)](https://github.com/davewalker5/DroneFlightLog/issues)
[![Coverage Status](https://coveralls.io/repos/github/davewalker5/DroneFlightLog/badge.svg?branch=master)](https://coveralls.io/github/davewalker5/DroneFlightLog?branch=master)
[![Releases](https://img.shields.io/github/v/release/davewalker5/DroneFlightLog.svg?include_prereleases)](https://github.com/davewalker5/DroneFlightLog/releases)
[![NuGet](https://img.shields.io/nuget/v/DroneFlightLog.Data)](https://www.nuget.org/packages?q=droneflightlog.data)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/davewalker5/DroneFlightLog/blob/master/LICENSE)
[![Language](https://img.shields.io/badge/language-c%23-blue.svg)](https://github.com/davewalker5/DroneFlightLog/)
[![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/davewalker5/DroneFlightLog)](https://github.com/davewalker5/DroneFlightLog/)

## About

DroneFlightLog implements a SQL-based drone flight log boook. An ASP.NET WebAPI provides access to the business logic and data access layer while an ASP.NET MVC UI provides the user interface.

The logbook allows for storage and maintenance of the following data:

- Operator details
- Drones, models and manufacturers
- Flights, flight locations and flight properties

## Getting Started

Please see the [Wiki](https://github.com/davewalker5/DroneFlightLog/wiki) for configuration details and the user guide.

## Authors

- **Dave Walker** - _Initial work_ - [LinkedIn](https://www.linkedin.com/in/davewalker5/)

## Credits

Implementation of authentication using JWT in the REST API is based on the following tutorial:

- https://github.com/cornflourblue/aspnet-core-3-jwt-authentication-api
- https://jasonwatmore.com/post/2019/10/11/aspnet-core-3-jwt-authentication-tutorial-with-example-api#users-controller-cs

The Drone Flight Log MVC project uses the Gijgo JavaScript controls library:

- https://gijgo.com

## Feedback

To file issues or suggestions, please use the [Issues](https://github.com/davewalker5/DroneFlightLog/issues) page for this project on GitHub.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details
8 changes: 4 additions & 4 deletions docker/api/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/core/aspnet:latest
COPY droneflightlog.api-1.2.1.0 /opt/droneflightlog.api-1.2.1.0
WORKDIR /opt/droneflightlog.api-1.2.1.0/bin
ENTRYPOINT [ "./DroneFlightLog.Api" ]
FROM mcr.microsoft.com/dotnet/core/aspnet:latest
COPY droneflightlog.api-1.2.1.0 /opt/droneflightlog.api-1.2.1.0
WORKDIR /opt/droneflightlog.api-1.2.1.0/bin
ENTRYPOINT [ "./DroneFlightLog.Api" ]
194 changes: 97 additions & 97 deletions docker/api/README.md
Original file line number Diff line number Diff line change
@@ -1,97 +1,97 @@
# droneflightlogapisqlite

The [DroneFlightLogDb](https://github.com/davewalker5/DroneFlightLogDb) and [DroneFlightLog.Api](https://github.com/davewalker5/DroneFlightLog.Api) GitHub projects implement the entities, business logic and a REST service for a SQL-based drone flight logbook, providing facilities for recording and querying the following data:

- Operator details
- Drones, models and manufacturers
- Flights, flight locations and flight properties

The droneflightlogapisqlite image contains a build of the logic and REST service for a SQLite database.

## Getting Started

### Prerequisities

In order to run this image you'll need docker installed.

- [Windows](https://docs.docker.com/windows/started)
- [OS X](https://docs.docker.com/mac/started/)
- [Linux](https://docs.docker.com/linux/started/)

### Usage

#### Container Parameters

The following "docker run" parameters are recommended when running the droneflightlogapisqlite image:

| Parameter | Value | Purpose |
| --------- | ------------------------------------------ | ------------------------------------------------------- |
| -d | - | Run as a background process |
| -v | /local:/var/opt/droneflightlog.api-1.0.0.4 | Mount the host folder containing the SQLite database |
| -p | 5001:80 | Expose the container's port 80 as port 5001 on the host |
| --rm | - | Remove the container automatically when it stops |

For example:

```shell
docker run -d -v /local:/var/opt/droneflightlog.api-1.0.0.4/ -p 5001:80 --rm davewalker5/droneflightlogapisqlite:latest
```

The "/local" path given to the -v argument is described, below, and should be replaced with a value appropriate for the host running the container. Similarly, the port number "5001" can be replaced with any available port on the host.

#### Volumes

The description of the container parameters, above, specifies that a folder containing the SQLite database file for the Drone Flight Log is mounted in the running container, using the "-v" parameter.

That folder should contain a SQLite database that has been created using the instructions in the [Drone Flight Log wiki](https://github.com/davewalker5/DroneFlightLogDb/wiki).

Specifically, the following should be done:

- [Create the SQLite database](https://github.com/davewalker5/DroneFlightLogDb/wiki/Using-a-SQLite-Database)
- [Add a user to the database](https://github.com/davewalker5/DroneFlightLogDb/wiki/REST-API)

The folder containing the "droneflightlog.db" file can then be passed to the "docker run" command using the "-v" parameter.

#### Running the Image

To run the image, enter the following command, substituting "/local" for the host folder containing the SQLite database, as described:

```shell
docker run -d -v /local:/var/opt/droneflightlog.api-1.0.0.4/ -p 5001:80 --rm davewalker5/droneflightlogapisqlite:latest
```

Once the container is running, browse to the following URL on the host:

http://localhost:5001

You should see the Swagger API documentation for the API.

## Built With

The droneflightlogapisqlite image was been built with the following:

| Aspect | Version |
| -------------- | ---------------------- |
| .NET Core CLI | 3.1.101 |
| Target Runtime | linux-x64 |
| Docker Desktop | 19.03.5, build 633a0ea |

## Find Us

- [DroneFlightLogDb on GitHub](https://github.com/davewalker5/DroneFlightLogDb)
- [DroneFlightLog.Api on GitHub](https://github.com/davewalker5/DroneFlightLog.Api)

## Versioning

For the versions available, see the [tags on this repository](https://github.com/davewalker5/DroneFlightLog.Api/tags).

## Authors

- **Dave Walker** - _Initial work_ - [LinkedIn](https://www.linkedin.com/in/davewalker5/)

See also the list of [contributors](https://github.com/davewalker5/DroneFlightLog.Api/contributors) who
participated in this project.

## License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/davewalker5/DroneFlightLog.Api/blob/master/LICENSE) file for details.
# droneflightlogapisqlite

The [DroneFlightLogDb](https://github.com/davewalker5/DroneFlightLogDb) and [DroneFlightLog.Api](https://github.com/davewalker5/DroneFlightLog.Api) GitHub projects implement the entities, business logic and a REST service for a SQL-based drone flight logbook, providing facilities for recording and querying the following data:

- Operator details
- Drones, models and manufacturers
- Flights, flight locations and flight properties

The droneflightlogapisqlite image contains a build of the logic and REST service for a SQLite database.

## Getting Started

### Prerequisities

In order to run this image you'll need docker installed.

- [Windows](https://docs.docker.com/windows/started)
- [OS X](https://docs.docker.com/mac/started/)
- [Linux](https://docs.docker.com/linux/started/)

### Usage

#### Container Parameters

The following "docker run" parameters are recommended when running the droneflightlogapisqlite image:

| Parameter | Value | Purpose |
| --------- | ------------------------------------------ | ------------------------------------------------------- |
| -d | - | Run as a background process |
| -v | /local:/var/opt/droneflightlog.api-1.0.0.4 | Mount the host folder containing the SQLite database |
| -p | 5001:80 | Expose the container's port 80 as port 5001 on the host |
| --rm | - | Remove the container automatically when it stops |

For example:

```shell
docker run -d -v /local:/var/opt/droneflightlog.api-1.0.0.4/ -p 5001:80 --rm davewalker5/droneflightlogapisqlite:latest
```

The "/local" path given to the -v argument is described, below, and should be replaced with a value appropriate for the host running the container. Similarly, the port number "5001" can be replaced with any available port on the host.

#### Volumes

The description of the container parameters, above, specifies that a folder containing the SQLite database file for the Drone Flight Log is mounted in the running container, using the "-v" parameter.

That folder should contain a SQLite database that has been created using the instructions in the [Drone Flight Log wiki](https://github.com/davewalker5/DroneFlightLogDb/wiki).

Specifically, the following should be done:

- [Create the SQLite database](https://github.com/davewalker5/DroneFlightLogDb/wiki/Using-a-SQLite-Database)
- [Add a user to the database](https://github.com/davewalker5/DroneFlightLogDb/wiki/REST-API)

The folder containing the "droneflightlog.db" file can then be passed to the "docker run" command using the "-v" parameter.

#### Running the Image

To run the image, enter the following command, substituting "/local" for the host folder containing the SQLite database, as described:

```shell
docker run -d -v /local:/var/opt/droneflightlog.api-1.0.0.4/ -p 5001:80 --rm davewalker5/droneflightlogapisqlite:latest
```

Once the container is running, browse to the following URL on the host:

http://localhost:5001

You should see the Swagger API documentation for the API.

## Built With

The droneflightlogapisqlite image was been built with the following:

| Aspect | Version |
| -------------- | ---------------------- |
| .NET Core CLI | 3.1.101 |
| Target Runtime | linux-x64 |
| Docker Desktop | 19.03.5, build 633a0ea |

## Find Us

- [DroneFlightLogDb on GitHub](https://github.com/davewalker5/DroneFlightLogDb)
- [DroneFlightLog.Api on GitHub](https://github.com/davewalker5/DroneFlightLog.Api)

## Versioning

For the versions available, see the [tags on this repository](https://github.com/davewalker5/DroneFlightLog.Api/tags).

## Authors

- **Dave Walker** - _Initial work_ - [LinkedIn](https://www.linkedin.com/in/davewalker5/)

See also the list of [contributors](https://github.com/davewalker5/DroneFlightLog.Api/contributors) who
participated in this project.

## License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/davewalker5/DroneFlightLog.Api/blob/master/LICENSE) file for details.
Loading

0 comments on commit 4b107f3

Please sign in to comment.