Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Overhaul the gem directory structure, add Travis and Gitlab build support #61

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

cheald
Copy link

@cheald cheald commented Mar 5, 2018

This PR updates the gem structure to be more idiomatic:

  • The C extension is under ext/
  • The Ruby portions of the gem are under lib/
  • Added test_helper for test setup, replacing FbTestCases

This also updates the tests a bit to work better in container isolation:

  • DB paths are now relative to the build directory
  • The rubytest user is dropped if it exists, then recreated as needed. This allows testing in both aged and pristine environments.
  • The test suite no longer uses the source files as test data for tests.

Finally, this adds support for building on Travis and Gitlab CI on Ruby 1.9, 2.0, 2.1, 2.2, 2.3, and 2.4.

It currently builds against Firebird-2.5, but future improvements could include CI for FB-3.0.

cheald added 15 commits March 3, 2018 14:06
Use sudo for install ops on Travis

Missed a sudo

One more sudo fix
Added ext/ and lib/ directories. There's now a lib/fb.rb which is the
main entry point for the gem, and it loads `fb/fb_ext` for the C extension.

Set up building with `rake-compiler`.

Moved README to USAGE.txt and set up a README.md suitable for display online
Install deps with bundler

Fix the compile target task name

Try a setup without the debconf-set-selections

Restart fb after install

Attempt to fix sysdba password

Need sudo to read the master PW

Fixed the wrong place

cat the FB PW

Another try at fixing the sysdba PW

Fix gsec setup

Another attempt (you know this is getting squashed)

Just build one Ruby target until we get gsec figured out

Try exporting the password

Explicitly handle Fb::Error when dropping user

Exclude the user drop, for testing on Travis

Can't drop then re-add user on the same connection

Explicit commit; attempt to avoid transaction timeout

Ensure that the DB closes even if the user drop fails

Don't drop the DB manually
Add travis to the firebird group so it can validate FB file existence

Ensure DBs dir exists and is chown'd, reload groups after travis assignment

Fix group memebership per travis docs

When a scalpel doesn't work, try a sledgehammer
@mariuz
Copy link
Contributor

mariuz commented May 22, 2020

I have added them to my fork , I will add there Firebird 3 testing in travis/github

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants