mirror of
https://github.com/ansible/awx.git
synced 2026-03-31 15:55:07 -02:30
Compare commits
1 Commits
23.9.0
...
daoneill-i
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bfb0d15e6f |
40
.github/actions/issue_metrics/issue_metrics.yml
vendored
Normal file
40
.github/actions/issue_metrics/issue_metrics.yml
vendored
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
name: Monthly issue metrics
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
schedule:
|
||||||
|
- cron: '3 2 1 * *'
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
issues: write
|
||||||
|
pull-requests: read
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
name: issue metrics
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Get dates for last month
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
# Calculate the first day of the previous month
|
||||||
|
first_day=$(date -d "last month" +%Y-%m-01)
|
||||||
|
|
||||||
|
# Calculate the last day of the previous month
|
||||||
|
last_day=$(date -d "$first_day +1 month -1 day" +%Y-%m-%d)
|
||||||
|
|
||||||
|
#Set an environment variable with the date range
|
||||||
|
echo "$first_day..$last_day"
|
||||||
|
echo "last_month=$first_day..$last_day" >> "$GITHUB_ENV"
|
||||||
|
|
||||||
|
- name: Run issue-metrics tool
|
||||||
|
uses: github/issue-metrics@v2
|
||||||
|
env:
|
||||||
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
SEARCH_QUERY: 'repo:ansible/awx is:issue created:${{ env.last_month }} -reason:"not planned"'
|
||||||
|
|
||||||
|
- name: Create issue
|
||||||
|
uses: peter-evans/create-issue-from-file@v4
|
||||||
|
with:
|
||||||
|
title: Monthly issue metrics report
|
||||||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
content-filepath: ./issue_metrics.md
|
||||||
20
.github/workflows/promote.yml
vendored
20
.github/workflows/promote.yml
vendored
@@ -83,15 +83,11 @@ jobs:
|
|||||||
|
|
||||||
- name: Re-tag and promote awx image
|
- name: Re-tag and promote awx image
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools create \
|
docker pull ghcr.io/${{ github.repository }}:${{ github.event.release.tag_name }}
|
||||||
ghcr.io/${{ github.repository }}:${{ github.event.release.tag_name }} \
|
docker tag ghcr.io/${{ github.repository }}:${{ github.event.release.tag_name }} quay.io/${{ github.repository }}:${{ github.event.release.tag_name }}
|
||||||
--tag quay.io/${{ github.repository }}:${{ github.event.release.tag_name }}
|
docker tag ghcr.io/${{ github.repository }}:${{ github.event.release.tag_name }} quay.io/${{ github.repository }}:latest
|
||||||
docker buildx imagetools create \
|
docker push quay.io/${{ github.repository }}:${{ github.event.release.tag_name }}
|
||||||
ghcr.io/${{ github.repository }}:${{ github.event.release.tag_name }} \
|
docker push quay.io/${{ github.repository }}:latest
|
||||||
--tag quay.io/${{ github.repository }}:latest
|
docker pull ghcr.io/${{ github.repository_owner }}/awx-ee:${{ github.event.release.tag_name }}
|
||||||
|
docker tag ghcr.io/${{ github.repository_owner }}/awx-ee:${{ github.event.release.tag_name }} quay.io/${{ github.repository_owner }}/awx-ee:${{ github.event.release.tag_name }}
|
||||||
- name: Re-tag and promote awx-ee image
|
docker push quay.io/${{ github.repository_owner }}/awx-ee:${{ github.event.release.tag_name }}
|
||||||
run: |
|
|
||||||
docker buildx imagetools create \
|
|
||||||
ghcr.io/${{ github.repository_owner }}/awx-ee:${{ github.event.release.tag_name }} \
|
|
||||||
--tag quay.io/${{ github.repository_owner }}/awx-ee:${{ github.event.release.tag_name }}
|
|
||||||
|
|||||||
6
.github/workflows/stage.yml
vendored
6
.github/workflows/stage.yml
vendored
@@ -102,9 +102,9 @@ jobs:
|
|||||||
|
|
||||||
- name: tag awx-ee:latest with version input
|
- name: tag awx-ee:latest with version input
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools create \
|
docker pull quay.io/ansible/awx-ee:latest
|
||||||
quay.io/ansible/awx-ee:latest \
|
docker tag quay.io/ansible/awx-ee:latest ghcr.io/${{ github.repository_owner }}/awx-ee:${{ github.event.inputs.version }}
|
||||||
--tag ghcr.io/${{ github.repository_owner }}/awx-ee:${{ github.event.inputs.version }}
|
docker push ghcr.io/${{ github.repository_owner }}/awx-ee:${{ github.event.inputs.version }}
|
||||||
|
|
||||||
- name: Stage awx-operator image
|
- name: Stage awx-operator image
|
||||||
working-directory: awx-operator
|
working-directory: awx-operator
|
||||||
|
|||||||
@@ -259,12 +259,6 @@ class AWXConsumerPG(AWXConsumerBase):
|
|||||||
current_downtime = time.time() - self.pg_down_time
|
current_downtime = time.time() - self.pg_down_time
|
||||||
if current_downtime > self.pg_max_wait:
|
if current_downtime > self.pg_max_wait:
|
||||||
logger.exception(f"Postgres event consumer has not recovered in {current_downtime} s, exiting")
|
logger.exception(f"Postgres event consumer has not recovered in {current_downtime} s, exiting")
|
||||||
# Sending QUIT to multiprocess queue to signal workers to exit
|
|
||||||
for worker in self.pool.workers:
|
|
||||||
try:
|
|
||||||
worker.quit()
|
|
||||||
except Exception:
|
|
||||||
logger.exception(f"Error sending QUIT to worker {worker}")
|
|
||||||
raise
|
raise
|
||||||
# Wait for a second before next attempt, but still listen for any shutdown signals
|
# Wait for a second before next attempt, but still listen for any shutdown signals
|
||||||
for i in range(10):
|
for i in range(10):
|
||||||
@@ -276,12 +270,6 @@ class AWXConsumerPG(AWXConsumerBase):
|
|||||||
except Exception:
|
except Exception:
|
||||||
# Log unanticipated exception in addition to writing to stderr to get timestamps and other metadata
|
# Log unanticipated exception in addition to writing to stderr to get timestamps and other metadata
|
||||||
logger.exception('Encountered unhandled error in dispatcher main loop')
|
logger.exception('Encountered unhandled error in dispatcher main loop')
|
||||||
# Sending QUIT to multiprocess queue to signal workers to exit
|
|
||||||
for worker in self.pool.workers:
|
|
||||||
try:
|
|
||||||
worker.quit()
|
|
||||||
except Exception:
|
|
||||||
logger.exception(f"Error sending QUIT to worker {worker}")
|
|
||||||
raise
|
raise
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ function Dashboard() {
|
|||||||
<Trans>
|
<Trans>
|
||||||
<p>
|
<p>
|
||||||
<InfoCircleIcon /> A tech preview of the new {brandName} user
|
<InfoCircleIcon /> A tech preview of the new {brandName} user
|
||||||
interface can be found <a href="/ui_next">here</a>.
|
interface can be found <a href="/ui_next/dashboard">here</a>.
|
||||||
</p>
|
</p>
|
||||||
</Trans>
|
</Trans>
|
||||||
</Banner>
|
</Banner>
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ function SubscriptionUsage() {
|
|||||||
<Trans>
|
<Trans>
|
||||||
<p>
|
<p>
|
||||||
<InfoCircleIcon /> A tech preview of the new {brandName} user
|
<InfoCircleIcon /> A tech preview of the new {brandName} user
|
||||||
interface can be found <a href="/ui_next">here</a>.
|
interface can be found <a href="/ui_next/dashboard">here</a>.
|
||||||
</p>
|
</p>
|
||||||
</Trans>
|
</Trans>
|
||||||
</Banner>
|
</Banner>
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
name: "{{ project_name }}"
|
name: "{{ project_name }}"
|
||||||
organization: "{{ org_name }}"
|
organization: "{{ org_name }}"
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: true
|
wait: true
|
||||||
|
|
||||||
- name: Create a git project with same name, different org
|
- name: Create a git project with same name, different org
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: true
|
wait: true
|
||||||
register: result
|
register: result
|
||||||
|
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: true
|
wait: true
|
||||||
state: exists
|
state: exists
|
||||||
register: result
|
register: result
|
||||||
@@ -58,7 +58,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: true
|
wait: true
|
||||||
state: exists
|
state: exists
|
||||||
request_timeout: .001
|
request_timeout: .001
|
||||||
@@ -75,7 +75,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: true
|
wait: true
|
||||||
state: absent
|
state: absent
|
||||||
register: result
|
register: result
|
||||||
@@ -89,7 +89,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: true
|
wait: true
|
||||||
state: exists
|
state: exists
|
||||||
register: result
|
register: result
|
||||||
@@ -103,7 +103,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: false
|
wait: false
|
||||||
register: result
|
register: result
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
@@ -137,7 +137,7 @@
|
|||||||
name: "{{ project_name2 }}"
|
name: "{{ project_name2 }}"
|
||||||
organization: "{{ org_name }}"
|
organization: "{{ org_name }}"
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
scm_credential: "{{ cred_name }}"
|
scm_credential: "{{ cred_name }}"
|
||||||
check_mode: true
|
check_mode: true
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@
|
|||||||
name: "{{ project_name2 }}"
|
name: "{{ project_name2 }}"
|
||||||
organization: Non_Existing_Org
|
organization: Non_Existing_Org
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
scm_credential: "{{ cred_name }}"
|
scm_credential: "{{ cred_name }}"
|
||||||
register: result
|
register: result
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
@@ -179,7 +179,7 @@
|
|||||||
name: "{{ project_name2 }}"
|
name: "{{ project_name2 }}"
|
||||||
organization: "{{ org_name }}"
|
organization: "{{ org_name }}"
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
scm_credential: Non_Existing_Credential
|
scm_credential: Non_Existing_Credential
|
||||||
register: result
|
register: result
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
@@ -191,7 +191,7 @@
|
|||||||
- "'Non_Existing_Credential' in result.msg"
|
- "'Non_Existing_Credential' in result.msg"
|
||||||
- "result.total_results == 0"
|
- "result.total_results == 0"
|
||||||
|
|
||||||
- name: Create a git project using a branch and allowing branch override
|
- name: Create a git project without credentials without waiting
|
||||||
project:
|
project:
|
||||||
name: "{{ project_name3 }}"
|
name: "{{ project_name3 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
name: "{{ project_name1 }}"
|
name: "{{ project_name1 }}"
|
||||||
organization: Default
|
organization: Default
|
||||||
scm_type: git
|
scm_type: git
|
||||||
scm_url: https://github.com/ansible/ansible-tower-samples
|
scm_url: https://github.com/ansible/test-playbooks
|
||||||
wait: false
|
wait: false
|
||||||
register: project_create_result
|
register: project_create_result
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ Setting up LDAP Authentication
|
|||||||
single: LDAP
|
single: LDAP
|
||||||
pair: authentication; LDAP
|
pair: authentication; LDAP
|
||||||
|
|
||||||
This chapter describes how to integrate LDAP authentication with AWX.
|
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 21 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 16 KiB |
@@ -1,4 +1,4 @@
|
|||||||
aiohttp>=3.8.6 # CVE-2023-47627
|
aiohttp
|
||||||
ansiconv==1.0.0 # UPGRADE BLOCKER: from 2013, consider replacing instead of upgrading
|
ansiconv==1.0.0 # UPGRADE BLOCKER: from 2013, consider replacing instead of upgrading
|
||||||
asciichartpy
|
asciichartpy
|
||||||
asn1
|
asn1
|
||||||
@@ -8,7 +8,7 @@ boto3
|
|||||||
botocore
|
botocore
|
||||||
channels
|
channels
|
||||||
channels-redis==3.4.1 # see UPGRADE BLOCKERs
|
channels-redis==3.4.1 # see UPGRADE BLOCKERs
|
||||||
cryptography>=41.0.6 # CVE-2023-49083
|
cryptography>=41.0.2 # CVE-2023-38325
|
||||||
Cython<3 # this is needed as a build dependency, one day we may have separated build deps
|
Cython<3 # this is needed as a build dependency, one day we may have separated build deps
|
||||||
daphne
|
daphne
|
||||||
distro
|
distro
|
||||||
@@ -26,15 +26,15 @@ django-split-settings==1.0.0 # We hit a strange issue where the release proce
|
|||||||
djangorestframework
|
djangorestframework
|
||||||
djangorestframework-yaml
|
djangorestframework-yaml
|
||||||
filelock
|
filelock
|
||||||
GitPython>=3.1.37 # CVE-2023-41040
|
GitPython>=3.1.32 # CVE-2023-40267
|
||||||
hiredis==2.0.0 # see UPGRADE BLOCKERs
|
hiredis==2.0.0 # see UPGRADE BLOCKERs
|
||||||
irc
|
irc
|
||||||
jinja2>=3.1.3 # CVE-2024-22195
|
jinja2
|
||||||
JSON-log-formatter
|
JSON-log-formatter
|
||||||
jsonschema
|
jsonschema
|
||||||
Markdown # used for formatting API help
|
Markdown # used for formatting API help
|
||||||
openshift
|
openshift
|
||||||
pexpect==4.7.0 # see library notes
|
pexpect==4.7.0 # see library notes
|
||||||
prometheus_client
|
prometheus_client
|
||||||
psycopg
|
psycopg
|
||||||
psutil
|
psutil
|
||||||
@@ -49,20 +49,20 @@ pyyaml>=6.0.1
|
|||||||
receptorctl
|
receptorctl
|
||||||
social-auth-core[openidconnect]==4.4.2 # see UPGRADE BLOCKERs
|
social-auth-core[openidconnect]==4.4.2 # see UPGRADE BLOCKERs
|
||||||
social-auth-app-django==5.4.0 # see UPGRADE BLOCKERs
|
social-auth-app-django==5.4.0 # see UPGRADE BLOCKERs
|
||||||
sqlparse>=0.4.4 # Required by django https://github.com/ansible/awx/security/dependabot/96
|
sqlparse >= 0.4.4 # Required by django https://github.com/ansible/awx/security/dependabot/96
|
||||||
redis
|
redis
|
||||||
requests
|
requests
|
||||||
slack-sdk
|
slack-sdk
|
||||||
tacacs_plus==1.0 # UPGRADE BLOCKER: auth does not work with later versions
|
tacacs_plus==1.0 # UPGRADE BLOCKER: auth does not work with later versions
|
||||||
twilio
|
twilio
|
||||||
twisted[tls]>=23.10.0 # CVE-2023-46137
|
twisted[tls]
|
||||||
uWSGI
|
uWSGI
|
||||||
uwsgitop
|
uwsgitop
|
||||||
wheel>=0.38.1 # CVE-2022-40898
|
wheel>=0.38.1 # CVE-2022-40898
|
||||||
pip==21.2.4 # see UPGRADE BLOCKERs
|
pip==21.2.4 # see UPGRADE BLOCKERs
|
||||||
setuptools # see UPGRADE BLOCKERs
|
setuptools # see UPGRADE BLOCKERs
|
||||||
setuptools_scm[toml] # see UPGRADE BLOCKERs, xmlsec build dep
|
setuptools_scm[toml] # see UPGRADE BLOCKERs, xmlsec build dep
|
||||||
setuptools-rust>=0.11.4 # cryptography build dep
|
setuptools-rust >= 0.11.4 # cryptography build dep
|
||||||
pkgconfig>=1.5.1 # xmlsec build dep - needed for offline build
|
pkgconfig>=1.5.1 # xmlsec build dep - needed for offline build
|
||||||
|
|
||||||
# Temporarily added to use ansible-runner from git branch, to be removed
|
# Temporarily added to use ansible-runner from git branch, to be removed
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
adal==1.2.7
|
adal==1.2.7
|
||||||
# via msrestazure
|
# via msrestazure
|
||||||
aiohttp==3.9.3
|
aiohttp==3.8.3
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
aioredis==1.3.1
|
aioredis==1.3.1
|
||||||
# via channels-redis
|
# via channels-redis
|
||||||
@@ -70,12 +70,14 @@ channels==3.0.5
|
|||||||
channels-redis==3.4.1
|
channels-redis==3.4.1
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
charset-normalizer==2.1.1
|
charset-normalizer==2.1.1
|
||||||
# via requests
|
# via
|
||||||
|
# aiohttp
|
||||||
|
# requests
|
||||||
click==8.1.3
|
click==8.1.3
|
||||||
# via receptorctl
|
# via receptorctl
|
||||||
constantly==15.1.0
|
constantly==15.1.0
|
||||||
# via twisted
|
# via twisted
|
||||||
cryptography==41.0.7
|
cryptography==41.0.3
|
||||||
# via
|
# via
|
||||||
# -r /awx_devel/requirements/requirements.in
|
# -r /awx_devel/requirements/requirements.in
|
||||||
# adal
|
# adal
|
||||||
@@ -161,7 +163,7 @@ frozenlist==1.3.3
|
|||||||
# aiosignal
|
# aiosignal
|
||||||
gitdb==4.0.10
|
gitdb==4.0.10
|
||||||
# via gitpython
|
# via gitpython
|
||||||
gitpython==3.1.42
|
gitpython==3.1.32
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
google-auth==2.14.1
|
google-auth==2.14.1
|
||||||
# via kubernetes
|
# via kubernetes
|
||||||
@@ -214,7 +216,7 @@ jaraco-text==3.11.0
|
|||||||
# via
|
# via
|
||||||
# irc
|
# irc
|
||||||
# jaraco-collections
|
# jaraco-collections
|
||||||
jinja2==3.1.3
|
jinja2==3.1.2
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
jmespath==1.0.1
|
jmespath==1.0.1
|
||||||
# via
|
# via
|
||||||
@@ -360,7 +362,7 @@ pyyaml==6.0.1
|
|||||||
# djangorestframework-yaml
|
# djangorestframework-yaml
|
||||||
# kubernetes
|
# kubernetes
|
||||||
# receptorctl
|
# receptorctl
|
||||||
receptorctl==1.4.4
|
receptorctl==1.4.2
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
redis==4.3.5
|
redis==4.3.5
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
@@ -438,7 +440,7 @@ tomli==2.0.1
|
|||||||
# via setuptools-scm
|
# via setuptools-scm
|
||||||
twilio==7.15.3
|
twilio==7.15.3
|
||||||
# via -r /awx_devel/requirements/requirements.in
|
# via -r /awx_devel/requirements/requirements.in
|
||||||
twisted[tls]==23.10.0
|
twisted[tls]==22.10.0
|
||||||
# via
|
# via
|
||||||
# -r /awx_devel/requirements/requirements.in
|
# -r /awx_devel/requirements/requirements.in
|
||||||
# daphne
|
# daphne
|
||||||
|
|||||||
Reference in New Issue
Block a user