Skip to content

Commit

Permalink
Merge branch 'kbtopic-8-circle-reply' of https://github.com/kmycode/m…
Browse files Browse the repository at this point in the history
…astodon into kbtopic-8-circle-reply
  • Loading branch information
kmycode committed Nov 29, 2023
2 parents 300ab3f + d2d8e2f commit 75c7bc1
Show file tree
Hide file tree
Showing 4 changed files with 118 additions and 16 deletions.
98 changes: 98 additions & 0 deletions .github/workflows/elasticsearch-settings/elasticsearch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
# Before you set out to tweak and tune the configuration, make sure you
# understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
#cluster.name: my-application
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
#node.name: node-1
#
# Add custom attributes to the node:
#
#node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
path.data: /var/lib/elasticsearch
#
# Path to log files:
#
path.logs: /var/log/elasticsearch
#
# ----------------------------------- Memory -----------------------------------
#
# Lock the memory on startup:
#
#bootstrap.memory_lock: true
#
# Make sure that the heap size is set to about half the memory available
# on the system and that the owner of the process is allowed to use this
# limit.
#
# Elasticsearch performs poorly when the system is swapping the memory.
#
# ---------------------------------- Network -----------------------------------
#
# By default Elasticsearch is only accessible on localhost. Set a different
# address here to expose this node on the network:
#
#network.host: 192.168.0.1
#
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200. Set a specific HTTP port here:
#
#http.port: 9200
#
# For more information, consult the network module documentation.
#
# --------------------------------- Discovery ----------------------------------
#
# Pass an initial list of hosts to perform discovery when this node is started:
# The default list of hosts is ["127.0.0.1", "[::1]"]
#
#discovery.seed_hosts: ["host1", "host2"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
#cluster.initial_master_nodes: ["node-1", "node-2"]
#
# For more information, consult the discovery and cluster formation module documentation.
#
# ---------------------------------- Various -----------------------------------
#
# Require explicit names when deleting indices:
#
#action.destructive_requires_name: true
#
# ---------------------------------- Security ----------------------------------
#
# *** WARNING ***
#
# Elasticsearch security features are not enabled by default.
# These features are free, but require configuration changes to enable them.
# This means that users don’t have to provide credentials and can get full access
# to the cluster. Network connections are also not encrypted.
#
# To protect your data, we strongly encourage you to enable the Elasticsearch security features.
# Refer to the following documentation for instructions.
#
xpack.security.enabled: false
discovery.type: single-node
# https://www.elastic.co/guide/en/elasticsearch/reference/7.16/configuring-stack-security.html
4 changes: 4 additions & 0 deletions .github/workflows/test-ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -322,6 +322,10 @@ jobs:
sudo mkdir /etc/elasticsearch/sudachi -p
sudo cp sudachi-dictionary-*/system_core.dic /etc/elasticsearch/sudachi
- name: Set security settings
run: |
sudo cp .github/workflows/elasticsearch-settings/elasticsearch.yml /etc/elasticsearch
- name: Running Elasticsearch
run: |
sudo systemctl start elasticsearch
Expand Down
16 changes: 0 additions & 16 deletions spec/lib/activitypub/activity/announce_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -97,22 +97,6 @@
end
end

context 'with domain block' do
before do
Fabricate(:account)
Fabricate(:domain_block, domain: 'example.com', severity: :suspend)
subject.perform
end

let(:object_json) do
ActivityPub::TagManager.instance.uri_for(status)
end

it 'does not creates a reblog by sender of status', pending: 'considering spec' do
expect(sender.reblogged?(status)).to be false
end
end

context 'when the status belongs to a local user' do
before do
subject.perform
Expand Down
16 changes: 16 additions & 0 deletions spec/workers/activitypub/distribution_worker_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,22 @@
end
end

context 'with limited status for no-follower but non-mentioned follower' do
let(:no_follower) { Fabricate(:account, domain: 'example.com', inbox_url: 'http://example.com/no_follower/inbox', shared_inbox_url: 'http://example.com') }

before do
status.update(visibility: :limited)
status.capability_tokens.create!
status.mentions.create!(account: no_follower, silent: true)
end

it 'delivers to followers' do
expect_push_bulk_to_match(ActivityPub::DeliveryWorker, [[kind_of(String), status.account.id, 'http://example.com/no_follower/inbox', anything]]) do
subject.perform(status.id)
end
end
end

context 'with direct status' do
let(:mentioned_account) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/inbox', domain: 'foo.bar') }

Expand Down

0 comments on commit 75c7bc1

Please sign in to comment.