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

Hubspot 'main' PR #10

Merged
merged 116 commits into from
Jul 6, 2023
Merged
Show file tree
Hide file tree
Changes from 113 commits
Commits
Show all changes
116 commits
Select commit Hold shift + click to select a range
b08d041
Adding archive from singer-io
ethansRM May 4, 2023
992e911
Adding .DS_Store to .gitignore
ethansRM May 4, 2023
dd03512
remove password param, using OAuth
eryanRM May 18, 2023
1aa767b
.idea in gitingore
NeilGorman104 May 18, 2023
c5bceef
edit stream inital template
NeilGorman104 May 18, 2023
07ef7e1
Change Husbpot class / stream names
NeilGorman104 May 18, 2023
5070e12
Auth naming convention
NeilGorman104 May 18, 2023
c7bf30a
List Stream
NeilGorman104 May 18, 2023
cda6e0a
add .env.template
NeilGorman104 May 18, 2023
5626860
add authenticator function
NeilGorman104 May 18, 2023
64963a6
updated meltano.yml
May 23, 2023
d806aef
added user stream
May 23, 2023
d24abca
updated authentication
May 23, 2023
e2cda14
updated list stream and added users stream
May 23, 2023
a25d983
updated list stream
May 23, 2023
56a14df
added owner, email subscription, ticket, and deal streams
May 24, 2023
9f2bc3f
added api version in meltano.yml
May 25, 2023
2ab84cd
added streams for peotry stream
May 25, 2023
1f4a4f4
Merge pull request #2 from ryan-miranda-partners/property-stream
NeilGorman104 May 25, 2023
ff8daea
added streams for association type stream
May 26, 2023
40e1fb0
Merge pull request #3 from ryan-miranda-partners/association-stream
NeilGorman104 Jun 5, 2023
cc6f20d
added auth variable
Jun 12, 2023
eedd76c
updated readme
Jun 12, 2023
dd20eb9
added simple and api authenticators
Jun 12, 2023
5d09678
updated readme and added license
Jun 13, 2023
8478e53
removed archive
Jun 13, 2023
307359e
added comments and removed functions
Jun 13, 2023
8f16828
add .meltano to gitignore
NeilGorman104 Jun 13, 2023
fa5e002
Poetry Black Reformatting
NeilGorman104 Jun 13, 2023
a9976c5
Merge pull request #5 from ryan-miranda-partners/clean
NeilGorman104 Jun 13, 2023
344d838
added pytest
Jun 14, 2023
775577b
removed auth.py
Jun 14, 2023
6cd4579
added tests
Jun 14, 2023
c3a35fc
boolean column type changes
NeilGorman104 Jun 14, 2023
da5a1d3
Merge pull request #8 from ryan-miranda-partners/hubspot-pytest
NeilGorman104 Jun 14, 2023
e1594b3
Remove _sdk and -sdk suffix from connector / directory
NeilGorman104 Jun 14, 2023
938db2f
remove sdk suffix from readme
NeilGorman104 Jun 14, 2023
8e7aacc
Merge pull request #9 from ryan-miranda-partners/Remove_suffix
DhrruvRM Jun 15, 2023
9c657d8
Update actions in ci_workflow
lucas5thorneRyanMiranda Jun 21, 2023
6a2a63e
change test suite name to hubspot
NeilGorman104 Jun 21, 2023
1e8c702
remove unused auth types
NeilGorman104 Jun 21, 2023
5a02742
Remove API version settings / hardcode for all streams
NeilGorman104 Jun 21, 2023
082ca59
Remove oauth if statement
NeilGorman104 Jun 21, 2023
1be22d3
Comment out Association_type, remove ci_workflow TODO
NeilGorman104 Jun 22, 2023
f2a3c2c
Remove Association stream
NeilGorman104 Jun 22, 2023
486a9c6
update poetry install in ci_workflow
NeilGorman104 Jun 22, 2023
ecb0563
Remove extra line (linting)
NeilGorman104 Jun 22, 2023
db933cc
Remove auth_type from ci_workflow
NeilGorman104 Jun 22, 2023
b096a7b
remove continue-on-error in workflow
NeilGorman104 Jun 22, 2023
2df3085
Merge pull request #11 from ryan-miranda-partners/pr-requested-changes
NeilGorman104 Jun 22, 2023
30c62f4
Access_token env var in ci_workflow
NeilGorman104 Jun 22, 2023
119d92a
resolve linting test
NeilGorman104 Jun 23, 2023
a780a72
Remove schema directory line
NeilGorman104 Jun 26, 2023
28f0da1
Remove unused dependencies
NeilGorman104 Jun 26, 2023
9e1d18b
remove unused replication keys in user stream
NeilGorman104 Jun 26, 2023
f61253a
edit Hubspot readme and init descriptions
NeilGorman104 Jun 26, 2023
43b29ac
Remove redundant 'Meltano Variables' Section in readme
NeilGorman104 Jun 26, 2023
d8bfc18
updated list stream to contact stream
Jun 27, 2023
4748790
removed auth from meltano
Jun 27, 2023
c8e2cd3
add annotations to conftest
NeilGorman104 Jun 27, 2023
620a94b
Merge pull request #12 from ryan-miranda-partners/contacts
NeilGorman104 Jun 27, 2023
0b5acec
Add Company Stream
NeilGorman104 Jun 28, 2023
6fe89b9
add Deal stream
NeilGorman104 Jun 28, 2023
fcd9f7e
update deal stream table
NeilGorman104 Jun 28, 2023
ac18a16
Add FeedbackSubmissionsStream
NeilGorman104 Jun 28, 2023
99704f1
add LineItemStream
NeilGorman104 Jun 28, 2023
2090913
update columns for object streams
NeilGorman104 Jun 28, 2023
08a393e
add ProductStream
NeilGorman104 Jun 28, 2023
1fca84f
add TicketStream
NeilGorman104 Jun 28, 2023
d4fcaf9
add QuoteStream
NeilGorman104 Jun 28, 2023
67ab65a
add GoalStream
NeilGorman104 Jun 28, 2023
dc4e267
add CallStream
NeilGorman104 Jun 28, 2023
21f3a4d
add CommunicationStream
NeilGorman104 Jun 28, 2023
c9f5abc
add EmailStream
NeilGorman104 Jun 28, 2023
da3f8c1
add MeetingStream
NeilGorman104 Jun 28, 2023
0c75697
add NoteStream
NeilGorman104 Jun 28, 2023
067a713
add PostalMailStream
NeilGorman104 Jun 28, 2023
29c6dcb
add TaskStream
NeilGorman104 Jun 28, 2023
6d950df
update schemas with ids, timestamp, and archived data
NeilGorman104 Jun 28, 2023
20fc7a2
update pipeline stream stage values
NeilGorman104 Jun 30, 2023
41f49cd
change object stream ids to int
NeilGorman104 Jun 30, 2023
420b756
Remove loaders from meltano.yml
NeilGorman104 Jun 30, 2023
5f8447f
uncomment all streams
NeilGorman104 Jun 30, 2023
c078cc2
reformatting
NeilGorman104 Jun 30, 2023
6b346ea
Update doc links & comments in url_base function, get records descrip…
NeilGorman104 Jul 3, 2023
1688168
add dev environment
NeilGorman104 Jul 3, 2023
7aaa742
update primary & replication keys
NeilGorman104 Jul 3, 2023
bc4e67e
Adding Permissions section to readme
NeilGorman104 Jul 3, 2023
9b59dce
Update Pagination method
NeilGorman104 Jul 3, 2023
17c7f84
Update Property column types
NeilGorman104 Jul 4, 2023
c4578d7
update types for v1 endpoints
NeilGorman104 Jul 4, 2023
cf9ce99
updated columns in v3 streams
NeilGorman104 Jul 4, 2023
32d9058
Update Contacts Stream to v3
NeilGorman104 Jul 4, 2023
27c34d9
Change id types for v3 to String
NeilGorman104 Jul 4, 2023
af37e26
formatting
NeilGorman104 Jul 4, 2023
cbc4142
updated property stream
Jul 4, 2023
a38084f
Merge pull request #16 from ryan-miranda-partners/replication
DhrruvRM Jul 4, 2023
89ddc7f
Add legacy endpoint section in readme, update permissions section format
NeilGorman104 Jul 4, 2023
8b95899
readme grammar fix
NeilGorman104 Jul 4, 2023
d6146be
remove access token value in meltano.yml
NeilGorman104 Jul 4, 2023
2e8de8f
Merge branch 'Object-Streams' of https://github.com/ryan-miranda-part…
NeilGorman104 Jul 4, 2023
8232c94
Merge pull request #15 from ryan-miranda-partners/Object-Streams
NeilGorman104 Jul 4, 2023
0f37ef7
update stream table names to plural
NeilGorman104 Jul 5, 2023
9817271
remove redundant columns variable from streams
NeilGorman104 Jul 5, 2023
f03962b
hotfix: property communications path
NeilGorman104 Jul 5, 2023
fa11d9f
remove whitespace
NeilGorman104 Jul 5, 2023
8b12227
gitignore loader files
NeilGorman104 Jul 5, 2023
f59bda1
update table names to snake case
NeilGorman104 Jul 5, 2023
a7f2dee
added records jsonpath
Jul 6, 2023
6f917cb
Sync poetry.lock file
NeilGorman104 Jul 6, 2023
5738c5c
linting
NeilGorman104 Jul 6, 2023
fe7e186
Merge pull request #17 from ryan-miranda-partners/records
NeilGorman104 Jul 6, 2023
1c7c7ff
move records_jsonpath to top of class definition, add description
NeilGorman104 Jul 6, 2023
3d7d2cd
remove post_process
NeilGorman104 Jul 6, 2023
a424a48
removed get_url_params from streams, update in client.py
NeilGorman104 Jul 6, 2023
78297fe
simplify url_base function
NeilGorman104 Jul 6, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .env.template
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
TAP_HUBSPOT_ACCESS_TOKEN = ''
26 changes: 26 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: pip
directory: "/"
schedule:
interval: "daily"
commit-message:
prefix: "chore(deps): "
prefix-development: "chore(deps-dev): "
- package-ecosystem: pip
directory: "/.github/workflows"
schedule:
interval: daily
commit-message:
prefix: "ci: "
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: "ci: "
17 changes: 12 additions & 5 deletions .github/workflows/ci_workflow.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
### A CI workflow template that runs linting and python testing
### TODO: Modify as needed or as desired.

name: Test tap-hubspot-sdk
name: Test tap-hubspot

on: [push]

jobs:
linting:

runs-on: ubuntu-latest
strategy:
matrix:
# Only lint using the primary version used for dev
python-version: ["3.9"]
python-version: [3.9]

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -26,12 +27,14 @@ jobs:
pipx run tox -e lint

pytest:

runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
strategy:
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
python-version: [3.9]

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -45,5 +48,9 @@ jobs:
run: |
poetry install
- name: Test with pytest
id: test_pytest
continue-on-error: false
env:
TAP_HUBSPOT_ACCESS_TOKEN: ${{ secrets.access_token }}
run: |
poetry run pytest
poetry run pytest --capture=no
5 changes: 5 additions & 0 deletions .github/workflows/constraints.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
nox==2023.4.22
nox-poetry==1.0.2
pip==23.1.2
poetry==1.5.1
poetry-dynamic-versioning==0.22.0
51 changes: 51 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Publish with Dynamic Versioning

on:
release:
types: [published]

permissions:
contents: write
id-token: write

jobs:
publish:
name: Publish to PyPI
runs-on: ubuntu-latest
environment: publishing
env:
PIP_CONSTRAINT: .github/workflows/constraints.txt
steps:
- name: Checkout code
uses: actions/[email protected]
with:
fetch-depth: 0

- name: Set up Python
uses: actions/[email protected]
with:
python-version: "3.10"

- name: Upgrade pip
run: |
pip install pip
pip --version
- name: Install Poetry
run: |
pipx install poetry
pipx inject poetry poetry-dynamic-versioning[plugin]
poetry --version
poetry self show plugins
- name: Build
run: poetry build

- name: Upload wheel to release
uses: svenstaro/upload-release-action@v2
with:
file: dist/*.whl
tag: ${{ github.ref }}
overwrite: true
file_glob: true

- name: Publish
uses: pypa/[email protected]
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
.idea
.meltano
MANIFEST
target-*

# PyInstaller
# Usually these files are written by a python script from a template
Expand Down Expand Up @@ -150,3 +153,4 @@ cython_debug/
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
.DS_Store
93 changes: 93 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
Elastic License 2.0

URL: https://www.elastic.co/licensing/elastic-license

## Acceptance

By using the software, you agree to all of the terms and conditions below.

## Copyright License

The licensor grants you a non-exclusive, royalty-free, worldwide,
non-sublicensable, non-transferable license to use, copy, distribute, make
available, and prepare derivative works of the software, in each case subject to
the limitations and conditions below.

## Limitations

You may not provide the software to third parties as a hosted or managed
service, where the service provides users with access to any substantial set of
the features or functionality of the software.

You may not move, change, disable, or circumvent the license key functionality
in the software, and you may not remove or obscure any functionality in the
software that is protected by the license key.

You may not alter, remove, or obscure any licensing, copyright, or other notices
of the licensor in the software. Any use of the licensor’s trademarks is subject
to applicable law.

## Patents

The licensor grants you a license, under any patent claims the licensor can
license, or becomes able to license, to make, have made, use, sell, offer for
sale, import and have imported the software, in each case subject to the
limitations and conditions in this license. This license does not cover any
patent claims that you cause to be infringed by modifications or additions to
the software. If you or your company make any written claim that the software
infringes or contributes to infringement of any patent, your patent license for
the software granted under these terms ends immediately. If your company makes
such a claim, your patent license ends immediately for work on behalf of your
company.

## Notices

You must ensure that anyone who gets a copy of any part of the software from you
also gets a copy of these terms.

If you modify the software, you must include in any modified copies of the
software prominent notices stating that you have modified the software.

## No Other Rights

These terms do not imply any licenses other than those expressly granted in
these terms.

## Termination

If you use the software in violation of these terms, such use is not licensed,
and your licenses will automatically terminate. If the licensor provides you
with a notice of your violation, and you cease all violation of this license no
later than 30 days after you receive that notice, your licenses will be
reinstated retroactively. However, if you violate these terms after such
reinstatement, any additional violation of these terms will cause your licenses
to terminate automatically and permanently.

## No Liability

*As far as the law allows, the software comes as is, without any warranty or
condition, and the licensor will not be liable to you for any damages arising
out of these terms or the use or nature of the software, under any kind of
legal claim.*

## Definitions

The **licensor** is the entity offering these terms, and the **software** is the
software the licensor makes available under these terms, including any portion
of it.

**you** refers to the individual or entity agreeing to these terms.

**your company** is any legal entity, sole proprietorship, or other kind of
organization that you work for, plus all organizations that have control over,
are under the control of, or are under common control with that
organization. **control** means ownership of substantially all the assets of an
entity, or the power to direct its management and policies by vote, contract, or
otherwise. Control can be direct or indirect.

**your licenses** are all the licenses granted to you for the software under
these terms.

**use** means anything you do with the software requiring one of your licenses.

**trademark** means trademarks, service marks, and similar rights.
Loading