PyFunceble.cli.continuous_integration package

Submodules

PyFunceble.cli.continuous_integration.base module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides the base of all our CI classes.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
class PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase(*, authorized: Optional[bool] = None, git_email: Optional[str] = None, git_name: Optional[str] = None, git_branch: Optional[str] = None, git_distribution_branch: Optional[str] = None, token: Optional[str] = None, command: Optional[str] = None, end_command: Optional[str] = None, commit_message: Optional[str] = None, end_commit_message: Optional[str] = None, max_exec_minutes: Optional[int] = None)[source]

Bases: object

Provides the base of all continuous integration methods.

Parameters:
  • authorized – The authorization to run.
  • git_email – The email to apply while initilizing the git repository for push.
  • git_name – The name to apply while initilizing the git repository for push.
  • git_branch – The branch to use while testing.
  • git_distribution_branch – The branch to push the results into.
  • token – The token to apply while initilizing the git repository for push.
  • command – The command to execute before each push (except the latest one).
  • end_command – The commant to execute at the very end.
  • commit_message – The commit message to apply before each push (except the latest one).
  • end_commit_message – The commit message to apply at the very end.
  • max_exec_minutes – The maximum of minutes to apply before considering the current session as finished.
STD_AUTHORIZED = False
STD_COMMAND = None
STD_COMMIT_MESSAGE = 'PyFunceble - AutoSave'
STD_END_COMMAND = None
STD_END_COMMIT_MESSAGE = 'PyFunceble - Results'
STD_GIT_BRANCH = 'master'
STD_GIT_DISTRIBUTION_BRANCH = 'master'
STD_GIT_EMAIL = None
STD_GIT_NAME = None
STD_MAX_EXEC_MINUTES = 15
apply_commit() → None[source]

Apply the commit and push.

Side effect:
It runs the declared command to execute.
apply_end_commit() → None[source]

Apply the “end” commit and push.

Side effect:
It runs the declared command to execute.
authorized

Provides the currently state of the _authorized attribute.

bypass() → None[source]

Stops everything if the latest commit message match any of those:

  • [PyFunceble skip] (case insensitive)
  • [PyFunceble-skip] (case insensitive)
  • end_commit_marker
command

Provides the current state of the _command attribute.

commit_message

Provides the current state of the _commit_message attribute.

end_command

Provides the current state of the _end_command attribute.

end_commit_marker = '[ci skip]'
end_commit_message

Provides the current state of the _end_commit_message attribute.

ensure_git_branch_is_given()[source]

Ensures that the Git Branch is given before launching the decorated method.

Raises:PyFunceble.cli.continuous_integration.exceptions.GitBranchNotFound – When the Git Branch is not found.
ensure_git_distribution_branch_is_given()[source]

Ensures that the Git distribution Branch is given before launching the decorated method.

Raises:PyFunceble.cli.continuous_integration.exceptions.GitDistributionBranchNotFound – When the Git distribution Branch is not found.
ensure_git_email_is_given()[source]

Ensures that the Git Email is given before launching the decorated method.

Raises:PyFunceble.cli.continuous_integration.exceptions.GitEmailNotFound – When the Git Email is not found.
ensure_git_name_is_given()[source]

Ensures that the Git Name is given before launching the decorated method.

Raises:PyFunceble.cli.continuous_integration.exceptions.GitNameNotFound – When the Git Name is not found.
ensure_start_time_is_given()[source]

Ensures that the starting time is given before launching the decorated method.

Raises:PyFunceble.cli.continuous_integration.exceptions.StartTimeNotFound – When the token is not found.
ensure_token_is_given()[source]

Ensures that the token is given before launching the decorated method.

Raises:PyFunceble.cli.continuous_integration.exceptions.TokenNotFound – When the token is not found.
static exec_command(command: str, allow_stdout: bool) → None[source]

Exceutes the given command.

Parameters:
  • command – The command to execute.
  • allow_stdout – Allows us to return the command output to stdout.
execute_if_authorized()[source]

Executes the decorated method only if we are authorized to process. Otherwise, apply the given default.

expected_end_time = None
fix_permissions() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

A method to overwrite when custom rules for permissions are needed.

Note

This method is automatically called by the methods who apply commits.

static get_remote_destination()[source]

Provides the remote destination to use.

Raises:PyFunceble.cli.continuous_integration.exceptions.RemoteURLNotFound – When we could not determine the remote destination.
git_branch

Provides the current state of the _git_branch attribute.

git_distribution_branch

Provides the current state of the _git_distribution_branch attribute.

git_email

Provides the currently state of the _git_email attribute.

git_initialized = False
git_name

Provides the current state of the _git_name attribute.

guess_all_settings() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Try to guess all settings.

guess_and_set_authorized() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess the authorization.

guess_and_set_command() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the command to execute.

guess_and_set_commit_message() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the commit message to apply.

guess_and_set_end_command() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the command to execute at the very end.

guess_and_set_end_commit_message() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the commit message to apply at the very end.

guess_and_set_git_branch() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the Git Branch.

guess_and_set_git_distribution_branch() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the Git distribution Branch.

guess_and_set_git_email() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the Git Email.

guess_and_set_git_name() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the Git Name.

guess_and_set_max_exec_minutes() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the maximum execution time.

guess_and_set_token() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Tries to guess and set the token.

init() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Initiate our infrastructure for the current CI engine.

The purpose of this method is to be able to have some custom init based on the CI we are currently on.

The init method should be manually started before runing any further action.

Warning

We assume that we are aware that you should run this method first.

init_git() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Initiate the git repository.

init_git_remote_with_token() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Initiates the git remote URL with the help of the given token.

is_authorized() → bool[source]

Checks if the current object is authorized to run.

is_time_exceeded() → bool[source]

Checks if we exceeded the allocated time we have.

max_exec_minutes

Provides the current state of the _max_exec_minutes attribute.

push_changes(branch: str, *, exit_it: bool = True) → None[source]

Pushes the changes.

Parameters:
  • branch – The branch to push.
  • exit_it – Exits after the push ?
Raises:

PyFunceble.cli.continuous_integration.exceptions.StopExecution – When the exit_it is set to True.

set_authorized(value: bool) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the value of the authorized attribute.

Parameters:value – The value to set.
set_command(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the command to work with.

Parameters:value – The command to set.
set_commit_message(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the commit message to apply to all commits except the final one.

Parameters:value – The message to set.
set_end_command(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the command to execute at the really end of the process with.

Parameters:value – The command to set.
set_end_commit_message(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the commit message to apply to the final one.

Parameters:value – The command to set.
set_git_branch(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the Git Branch to use.

Parameters:value – The value to set.
set_git_distribution_branch(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the Git distribution Branch to use.

Parameters:value – The value to set.
set_git_email(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the Git Email to use.

Parameters:value – The value to set.
set_git_name(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the Git Name to use.

Parameters:value – The value to set.
set_max_exec_minutes(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the maximum waiting time before considering the time as exceeded.

Parameters:value – The command to set.
set_start_time() → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the starting time to now.

set_token(value: str) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

Sets the token to use.

Parameters:value – The value to set.
start_time = None
token

Provides the current state of the _token attribute.

PyFunceble.cli.continuous_integration.exceptions module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides the exception related to the CI integration.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
exception PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException[source]

Bases: PyFunceble.exceptions.PyFuncebleException

Describes an exception related to the continuous integration.

exception PyFunceble.cli.continuous_integration.exceptions.GitBranchNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing git branch.

exception PyFunceble.cli.continuous_integration.exceptions.GitDistributionBranchNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing git distribution branch.

exception PyFunceble.cli.continuous_integration.exceptions.GitEmailNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing Git Email.

exception PyFunceble.cli.continuous_integration.exceptions.GitNameNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing Git Name.

exception PyFunceble.cli.continuous_integration.exceptions.RemoteURLNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing or unknown remote URL.

exception PyFunceble.cli.continuous_integration.exceptions.StartTimeNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing start time.

exception PyFunceble.cli.continuous_integration.exceptions.StopExecution[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Informs upstream - or interacting interface - that we pushed the changes and that they need stop everything they plan to do with PyFunceble.

exception PyFunceble.cli.continuous_integration.exceptions.TokenNotFound[source]

Bases: PyFunceble.cli.continuous_integration.exceptions.ContinuousIntegrationException

Describes a missing (Git?(lab|hub)) Token.

PyFunceble.cli.continuous_integration.github_actions module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides the CI engine and detection tool for the GitHub Actions.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
class PyFunceble.cli.continuous_integration.github_actions.GitHubActions(*, authorized: Optional[bool] = None, git_email: Optional[str] = None, git_name: Optional[str] = None, git_branch: Optional[str] = None, git_distribution_branch: Optional[str] = None, token: Optional[str] = None, command: Optional[str] = None, end_command: Optional[str] = None, commit_message: Optional[str] = None, end_commit_message: Optional[str] = None, max_exec_minutes: Optional[int] = None)[source]

Bases: PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase

Provides the interface which detects and work under the GitHub Actions infrastructure.

end_commit_marker = '[GHA skip]'
guess_and_set_authorized() → PyFunceble.cli.continuous_integration.github_actions.GitHubActions[source]

Tries to guess the authorization.

guess_and_set_token() → PyFunceble.cli.continuous_integration.github_actions.GitHubActions[source]

Tries to guess and set the token.

PyFunceble.cli.continuous_integration.gitlab_ci module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides the CI engine and detection tool for the GitLab CI.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
class PyFunceble.cli.continuous_integration.gitlab_ci.GitLabCI(*, authorized: Optional[bool] = None, git_email: Optional[str] = None, git_name: Optional[str] = None, git_branch: Optional[str] = None, git_distribution_branch: Optional[str] = None, token: Optional[str] = None, command: Optional[str] = None, end_command: Optional[str] = None, commit_message: Optional[str] = None, end_commit_message: Optional[str] = None, max_exec_minutes: Optional[int] = None)[source]

Bases: PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase

Provides the interface which detects and work under the GitLab CI infrastructure.

guess_and_set_authorized() → PyFunceble.cli.continuous_integration.gitlab_ci.GitLabCI[source]

Tries to guess the authorization.

guess_and_set_token() → PyFunceble.cli.continuous_integration.gitlab_ci.GitLabCI[source]

Tries to guess and set the token.

init_git_remote_with_token() → PyFunceble.cli.continuous_integration.gitlab_ci.GitLabCI[source]

Initiates the git remote URL with the help of the given token.

PyFunceble.cli.continuous_integration.jenkins module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides the CI engine and detection tool for Jenkins.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
class PyFunceble.cli.continuous_integration.jenkins.Jenkins(*, authorized: Optional[bool] = None, git_email: Optional[str] = None, git_name: Optional[str] = None, git_branch: Optional[str] = None, git_distribution_branch: Optional[str] = None, token: Optional[str] = None, command: Optional[str] = None, end_command: Optional[str] = None, commit_message: Optional[str] = None, end_commit_message: Optional[str] = None, max_exec_minutes: Optional[int] = None)[source]

Bases: PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase

Provides the interface which detects and work under several Jenkins infrastructure.

guess_and_set_authorized() → PyFunceble.cli.continuous_integration.jenkins.Jenkins[source]

Tries to guess the authorization.

guess_and_set_token() → PyFunceble.cli.continuous_integration.jenkins.Jenkins[source]

Tries to guess and set the token.

PyFunceble.cli.continuous_integration.travis_ci module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides the CI engine and detection tool for the Travis CI.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
class PyFunceble.cli.continuous_integration.travis_ci.TravisCI(*, authorized: Optional[bool] = None, git_email: Optional[str] = None, git_name: Optional[str] = None, git_branch: Optional[str] = None, git_distribution_branch: Optional[str] = None, token: Optional[str] = None, command: Optional[str] = None, end_command: Optional[str] = None, commit_message: Optional[str] = None, end_commit_message: Optional[str] = None, max_exec_minutes: Optional[int] = None)[source]

Bases: PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase

Provides the interface which detects and work under the Travis CI infrastructure.

guess_and_set_authorized() → PyFunceble.cli.continuous_integration.travis_ci.TravisCI[source]

Tries to guess the authorization.

guess_and_set_token() → PyFunceble.cli.continuous_integration.travis_ci.TravisCI[source]

Tries to guess and set the token.

PyFunceble.cli.continuous_integration.utils module

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides some utilities related to the CI.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
PyFunceble.cli.continuous_integration.utils.ci_object(*args, **kwargs) → PyFunceble.cli.continuous_integration.base.ContinuousIntegrationBase[source]

A placeholder which provides the CI object to use.

Module contents

The tool to check the availability or syntax of domain, IP or URL.

██████╗ ██╗   ██╗███████╗██╗   ██╗███╗   ██╗ ██████╗███████╗██████╗ ██╗     ███████╗
██╔══██╗╚██╗ ██╔╝██╔════╝██║   ██║████╗  ██║██╔════╝██╔════╝██╔══██╗██║     ██╔════╝
██████╔╝ ╚████╔╝ █████╗  ██║   ██║██╔██╗ ██║██║     █████╗  ██████╔╝██║     █████╗
██╔═══╝   ╚██╔╝  ██╔══╝  ██║   ██║██║╚██╗██║██║     ██╔══╝  ██╔══██╗██║     ██╔══╝
██║        ██║   ██║     ╚██████╔╝██║ ╚████║╚██████╗███████╗██████╔╝███████╗███████╗
╚═╝        ╚═╝   ╚═╝      ╚═════╝ ╚═╝  ╚═══╝ ╚═════╝╚══════╝╚═════╝ ╚══════╝╚══════╝

Provides everything we may need for continuous integration aka autosaving and auto commiting.

Author:
Nissar Chababy, @funilrys, contactTATAfunilrysTODTODcom
Special thanks:
https://pyfunceble.github.io/#/special-thanks
Contributors:
https://pyfunceble.github.io/#/contributors
Project link:
https://github.com/funilrys/PyFunceble
Project documentation:
https://pyfunceble.readthedocs.io/en/dev/
Project homepage:
https://pyfunceble.github.io/

License:

Copyright 2017, 2018, 2019, 2020, 2022, 2023 Nissar Chababy

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.